Classe de quaternion Sceneform pour les nombres à virgule flottante
Les opérations quaternionnelles sont réalisées dans un style Hamiltonien basé sur la règle de droite.
Champs
public à virgule flottante | M | |
public à virgule flottante | x | |
public à virgule flottante | o | |
public à virgule flottante | Z |
Constructeurs publics
Quaternion()
Créer un quaternion et définir l'identité
|
|
Quaternion(float x, float y, float z, float w)
Construisez le quaternion et définissez chaque valeur.
|
|
Quaternion(axe Vector3, angle flottant)
Créer un quaternion à l'aide d'un axe/d'un angle pour définir la rotation
|
|
Méthodes publiques
Statique Quaternion | |
Booléen statique |
equals(Quaternion lhs, Quaternion rhs)
Comparer deux quatrions
Tests de l'égalité en calculant le produit scalaire de lh et de rhs. |
booléen |
est égal(e) à(objet autre)
Renvoie la valeur "true" si l'autre objet est un quaternion et si le produit scalaire est égal à 1,0 +/- une tolérance.
|
Statique Quaternion |
eulerAngles(EulerAngles Vector3)
Obtenez un nouveau quaternion en utilisant eulerAngles pour définir la rotation.
|
Statique Quaternion |
identity
Définir un quaternion sur l'identité
|
Statique Vector3 | |
Quaternion |
inversé()
Obtenir un quaternion avec la rotation opposée
|
Statique Quaternion |
lookRotation (Vector3 forwardInWorld, Vector3 désiré dans le monde)
Récupère un nouveau quaternion représentant une rotation vers une direction avant spécifiée.
|
Statique Quaternion |
multiply(Quaternion lhs, Quaternion rhs)
Créer un quaternion en combinant deux multiplications quaternions(lhs, rhs) équivaut à effectuer une rotation rhs. La rotation lhs est importante pour cette opération. L'ordre des rotations lhs est important pour cette opération.
|
booléen |
normalize()
Redimensionne le quaternion à la longueur de l'unité.
|
Quaternion |
normalized
Obtenez un quaternion avec une rotation correspondante, mais ajusté à la longueur de l'unité.
|
Statique Vector3 | |
Statique Quaternion |
rotationBetweenVectors(début Vector3, fin Vector3)
Obtenez un nouveau quaternion représentant la rotation d'un vecteur à un autre.
|
void |
set(float qx, float qy, float qz, float qw)
Définir chaque valeur et normaliser la qualité
|
void | |
void | |
void |
setIdentity()
Définir le quaternion sur l'identité
|
Statique Quaternion | |
String |
Méthodes héritées
Champs
public floatw
float public x
public floaty
float public z
Constructeurs publics
public Quaternion ()
Créer un quaternion et définir l'identité
public Quaternion (float x, float y, float z, float w)
Construisez le quaternion et définissez chaque valeur. Le quaternion sera normalisé pendant la construction
Paramètres
x | |
---|---|
y | |
z | |
w |
public Quaternion (Quaternion q)
Construire un quaternion avec les valeurs d'un autre quaternion
Paramètres
q |
---|
public Quaternion (axe Vector3, angle flottant)
Créer un quaternion à l'aide d'un axe/d'un angle pour définir la rotation
Paramètres
Axis | Définit le sens de rotation |
---|---|
angle | Taille de l'angle en degrés |
public Quaternion (Vector3 eulerAngles)
Construire un quaternion à partir d'un angle angle
Paramètres
EulerAngles | : angle en degrés de chaque axe. |
---|
Voir également
Méthodes publiques
public static Quaternion AxeAngle (axe Vector3, degrés à virgule flottante)
Obtenir un nouveau quaternion à l'aide d'un axe/d'un angle pour définir la rotation
Paramètres
Axis | Définit le sens de rotation |
---|---|
degrés | Taille de l'angle en degrés |
public static boolean est égal à (Quaternion lhs, Quaternion rhs)
Comparer deux quatrions
Les tests d'égalité en calculant le produit scalaire de lhs et rhs. lhs et -lhs ne seront pas égaux selon cette fonction.
Paramètres
lhs | |
---|---|
rh |
booléen public est égal à (Objet autre)
Renvoie la valeur "true" si l'autre objet est un quaternion et si le produit scalaire est égal à 1,0 +/- une tolérance.
Paramètres
other |
---|
public static Quaternion eulerAngles (Vector3 eulerAngles)
Obtenez un nouveau quaternion en utilisant eulerAngles pour définir la rotation.
Les rotations sont appliquées dans l'ordre Z, Y ou X. Ce fonctionnement est cohérent avec celui d'autres moteurs graphiques. Notez que les systèmes de coordonnées sont différents entre Sceneform et Unity. Dès lors, les mêmes angles auront une orientation différente de celle d'Unity. Vérifiez attentivement les valeurs de vos paramètres pour obtenir le même effet que dans les autres moteurs.
Paramètres
EulerAngles | – angles en degrés. |
---|
public Quaternion inversé ()
Obtenir un quaternion avec la rotation opposée
Renvoie
- la rotation opposée
public static Quaternion lookRotation (Vector3 forwardInWorld, Vector3 WantUpInWorld)
Récupère un nouveau quaternion représentant une rotation vers une direction avant spécifiée. Si "upInWorld" est orthogonal à "forwardInWorld", l'axe des ordonnées est aligné avec les valeurs souhaitées "UpUpWorld".
Paramètres
avant-monde | |
---|---|
Intéressé |
public static Quaternion multiply (Quaternion lhs, Quaternion rhs)
Créer un quaternion en combinant deux multiplications quaternions(lhs, rhs) équivaut à effectuer une rotation rhs. La rotation lhs est importante pour cette opération. L'ordre des rotations lhs est important pour cette opération.
Paramètres
lhs | |
---|---|
rh |
Renvoie
- La rotation combinée
public boolean normalize ()
Redimensionne le quaternion à la longueur de l'unité.
Si le quaternion ne peut pas être mis à l'échelle, il est défini sur "identity", et la valeur "false" est renvoyée.
Renvoie
- Valeur "true" si le quaternion est supérieur à zéro
public Quaternion normalisé ()
Obtenez un quaternion avec une rotation correspondante, mais ajusté à la longueur de l'unité.
Renvoie
- le quaternion ajusté à la longueur de l'unité, ou zéro si cela n'est pas possible.
public static Vector3 rotateVector (Quaternion q, Vector3 src)
Rotation d'un vecteur 3 par un quaternion
Paramètres
q | |
---|---|
src |
Renvoie
- Vecteur avec rotation
public static Quaternion rotationBetweenVectors (Début de Vector3, fin de Vector3)
Obtenez un nouveau quaternion représentant la rotation d'un vecteur à un autre.
Paramètres
Départ | |
---|---|
end |
public void set (float qx, float qy, float qz, float qw)
Définir chaque valeur et normaliser la qualité
Paramètres
Tx | |
---|---|
qy | |
qz | |
qs |
public void set (axe Vector3, angle flottant)
Mettre à jour ce quaternion à l'aide d'un axe/d'un angle pour définir la rotation
Paramètres
Axis | |
---|---|
angle |
public void setIdentity ()
Définir le quaternion sur l'identité
public static Quaternion slerp (sortie du quaternion, fin du quaternion, float t)
Paramètres
Départ | |
---|---|
end | |
t |