Một lớp quaternion hình thức dành cho float.
Toán tử bậc bốn là Hamilton sử dụng quy ước bên phải.
Các trường
float công khai | tuần | |
float công khai | x | |
float công khai | năm | |
float công khai | z |
Xây dựng công cộng
Quaternion ()
Tạo Quaternion và đặt thành Identity
|
|
Quốc gia (nổi x, nổi y, nổi z, nổi w)
Tạo Quaternion và đặt từng giá trị.
|
|
Phương thức công khai
Tĩnh | |
boolean tĩnh |
equals(Quaternion lhs, Quaternion rhs)
So sánh 2,4 tỷ
Kiểm tra đẳng thức bằng cách tính tích tích của các số lh và rh. |
boolean | |
Tĩnh |
eulerAngles(Vector3 eulerAngles)
Nhận một Quaternion mới bằng cách sử dụng eulerAngles để xác định cách xoay.
|
Tĩnh |
identity()
Đặt quaternion thành danh tính
|
tĩnh Vector3 | |
Quy ước |
đảo ngược()
Nhận quaternion với chế độ xoay ngược lại
|
Tĩnh |
LookRotation (Vector3 progressInWorld, Vector3 mongUpInWorld)
Nhận được Quaternion mới biểu thị việc xoay theo một hướng tiến đã chỉ định.
|
Tĩnh |
nhân (Quaternion lhs, Quaternion rhs)
Tạo một Quaternion bằng cách kết hợp hai Quaternion nhân(lhs, rhs) tương đương với việc thực hiện xoay rhs, sau đó xoay lhs Thứ tự rất quan trọng cho thao tác này.
|
boolean |
bình thường hóa()
Điều chỉnh tỷ lệ quaternion thành độ dài đơn vị.
|
Quy ước |
bình thường hóa()
Nhận quaternion với một chế độ xoay phù hợp nhưng được điều chỉnh theo tỷ lệ độ dài đơn vị.
|
tĩnh Vector3 | |
Tĩnh |
rotationbetweenVectors(Vector3 bắt đầu, Vector3 kết thúc)
Nhận một Quaternion mới biểu thị việc xoay từ một vectơ sang một vectơ khác.
|
void |
đặt(float qx, float qy, float qz, float qw)
Đặt từng giá trị và chuẩn hoá Quaternion
|
void | |
void | |
void |
setIdentity()
Đặt Quaternion về danh tính
|
Tĩnh | |
Chuỗi |
toString()
|
Các phương thức kế thừa
Các trường
dấu phẩy động công khai w
dấu phẩy động công khai x
dấu phẩy động công khai y
dấu phẩy động công khai z
Xây dựng công cộng
công khai Quaternion ()
Tạo Quaternion và đặt thành Identity
công khai Quaternion (float x, float y, float z, float w)
Tạo Quaternion và đặt từng giá trị. Quaternion sẽ được chuẩn hoá trong quá trình xây dựng
Các tham số
lần | |
---|---|
y | |
z | |
mà |
công khai Quaternion (Quaternion q)
Xây dựng Quaternion bằng cách sử dụng các giá trị từ một Quaternion khác
Các tham số
q |
---|
công khai Quy tắc (Trục 3, góc nổi)
Tạo Quaternion bằng cách sử dụng trục/góc để xác định chế độ xoay
Các tham số
axis | Đặt hướng xoay |
---|---|
góc giữa A và B | Kích thước góc tính bằng độ |
công khai Quaternion (Vector3 eulerAngles)
Xây dựng Quaternion dựa trên eulerAngles.
Các tham số
eulerAngles | – góc tính theo độ cho mỗi trục. |
---|
Xem thêm
Phương thức công khai
công khai Tĩnh
Lấy quaternion mới bằng cách sử dụng trục/góc để xác định chế độ xoay
Các tham số
axis | Đặt hướng xoay |
---|---|
độ | Kích thước góc tính bằng độ |
boolean công khai boolean equals (Quaternion lhs, Quaternion rhs)
So sánh 2,4 tỷ
Kiểm tra sự cân bằng bằng cách tính tích của số chấm lh và rh. lhs và -lhs sẽ không bằng với hàm này.
Các tham số
lhs | |
---|---|
rh |
boolean công khai equals (Đối tượng khác)
Trả về true nếu đối tượng còn lại là Quaternion và tích số chấm là 1,0 +/- dung sai.
Các tham số
Chi phí khác |
---|
công khai Quaternion eulerAngles (Vector3 eulerAngles)
Nhận một Quaternion mới bằng cách sử dụng eulerAngles để xác định cách xoay.
Các chế độ xoay được áp dụng theo thứ tự Z, Y, X. Tính năng này nhất quán với các công cụ đồ hoạ khác. Cần lưu ý là hệ thống toạ độ lại khác nhau giữa Sceneform và Unity, vì vậy các góc tương tự sử dụng ở đây sẽ tạo ra hướng khác với Unity. Hãy kiểm tra kỹ các giá trị thông số để có được hiệu quả tương tự như trong các công cụ khác.
Các tham số
eulerAngles | – góc độ. |
---|
public static Quaternion LookRotation (Vector3 progressInWorld, Vector3 mongUpInWorld)
Nhận được Quaternion mới biểu thị việc xoay theo một hướng tiến đã chỉ định. Nếu upInWorld là trực giao với progressInWorld, thì trục Y sẽ căn chỉnh với mongUpInWorld.
Các tham số
FrontInWorld | |
---|---|
muốnUpInWorld |
công khai Quaternion nhân (Quaternion lhs, Quaternion rhs)
Tạo một Quaternion bằng cách kết hợp hai Quaternion nhân(lhs, rhs) tương đương với việc thực hiện xoay rhs, sau đó xoay lhs Thứ tự rất quan trọng cho thao tác này.
Các tham số
lhs | |
---|---|
rh |
Trả về
- Xoay vòng kết hợp
boolean công khai chuẩn hoá ()
Điều chỉnh tỷ lệ quaternion thành độ dài đơn vị.
Nếu không thể mở rộng Quaternion, Quaternion sẽ được đặt thành Identity và false được trả về.
Trả về
- true nếu Quaternion khác 0
công khai Quaternion chuẩn hoá ()
Nhận quaternion với một chế độ xoay phù hợp nhưng được điều chỉnh theo tỷ lệ độ dài đơn vị.
Trả về
- quaternion được chia tỷ lệ theo độ dài đơn vị hoặc bằng 0 nếu không thể thực hiện việc này.
công khai Vector3 rotateVector (Quaternion q, Vector3 src)
Xoay một Vector3 bằng một Quaternion
Các tham số
q | |
---|---|
src |
Trả về
- Vectơ xoay
công khai Quaternion rotationbetweenVectors (Vector3 bắt đầu, Vector3 end)
Nhận một Quaternion mới biểu thị việc xoay từ một vectơ sang một vectơ khác.
Các tham số
bắt đầu | |
---|---|
end |
public void set (float qx, float qy, float qz, float qw)
Đặt từng giá trị và chuẩn hoá Quaternion
Các tham số
qx | |
---|---|
so với cùng kỳ năm trước | |
qz | |
số lượng |
public void set (Vector3 trục, float corner)
Cập nhật Quaternion này bằng cách sử dụng trục/góc để xác định chế độ xoay
Các tham số
axis | |
---|---|
góc giữa A và B |
public void set (Quaternion q) ()
Sao chép các giá trị từ một Quaternion khác vào vùng này
Các tham số
q |
---|
public void setIdentity () là bao gồm
Đặt Quaternion về danh tính