Kvaternion
Inheritance: java.lang.Object
All Implemented Interfaces: com.aspose.threed.Struct, java.io.Serializable
public final class Quaternion implements Struct<Quaternion>, Serializable
Kvaternion används vanligtvis för att utföra rotation i datorgrafik.
Konstruktörer
| Konstruktor | Beskrivning |
|---|---|
| Quaternion(double w, double x, double y, double z) | Initierar en ny instans av klassen Quaternion. |
| Quaternion() |
Fält
| Fält | Beskrivning |
|---|---|
| IDENTITY | Identitetskvaternionen. |
| w | w-komponenten. |
| x | x-komponenten. |
| y | y-komponenten. |
| z | z-komponenten. |
Metoder
| Metod | Beskrivning |
|---|---|
| add(Quaternion lhs, Quaternion rhs) | Operatoröverladdning för + |
| clone() | |
| concat(Quaternion rhs) | Konkatenera två kvaternioner |
| conjugate() | Returnerar en konjugerad kvaternion av den aktuella kvaternionen |
| copyFrom(Quaternion src) | |
| div(Quaternion lhs, double rhs) | Operatoröverladdning för / |
| dot(Quaternion q) | Punktprodukt |
| equals(Object obj) | Kontrollera om två kvaternioner är lika |
| eulerAngles() | Konverterar kvaternion till rotation representerad av Euler-vinklar. Alla komponenter är i radianer. |
| fromAngleAxis(double a, Vector3 axis) | Skapar en kvaternion kring given axel och roterar medurs |
| fromEulerAngle(Vector3 eulerAngle) | Skapar en kvaternion från given Euler-vinkel |
| fromEulerAngle(double pitch, double yaw, double roll) | Skapar en kvaternion från given Euler-vinkel |
| fromRotation(Vector3 orig, Vector3 dest) | Skapar en kvaternion som roterar från ursprunglig till destinationsriktning |
| getClass() | |
| getLength() | Hämtar längden på kvaternionen |
| hashCode() | Hämtar hashkoden för Quaternion |
| interpolate(float t, Quaternion from, Quaternion to) | Fyller i denna kvaternion med det interpolerade värdet mellan de givna kvaternionargumenten för ett t mellan från och till. |
| inverse() | Returnerar en invers kvaternion av den aktuella kvaternionen |
| mul(Quaternion lhs, Quaternion rhs) | Operatoröverladdning för * |
| mul(Quaternion q, Vector3 v) | Operatoröverladdning för * |
| mul(Quaternion q, Vector4 v) | Operatoröverladdning för * |
| mul(Quaternion lhs, double rhs) | Operatoröverladdning för * |
| mul(Vector3 v, Quaternion q) | Operatoröverladdning för * |
| normalize() | Normalisera kvaternionen |
| notify() | |
| notifyAll() | |
| op_eq(Quaternion lhs, Quaternion rhs) | Likhetsoperator för kvaternion |
| op_ne(Quaternion lhs, Quaternion rhs) | Icke-likhetsoperator för kvaternion |
| slerp(double t, Quaternion v1, Quaternion v2) | Utför sfärisk linjär interpolation mellan två värden |
| toAngleAxis(double[] angle, Vector3 axis) | Decomponera kvaternionen till vinkel och axel |
| toMatrix() | Konvertera rotationen som presenteras av kvaternionen till en transformmatris. |
| toMatrix(Vector3 translation) | Konvertera rotationen som presenteras av kvaternionen till en transformmatris. |
| toString() | Hämtar representationen av kvaternionen som sträng |
| wait() | |
| wait(long arg0) | |
| wait(long arg0, int arg1) |
Quaternion(double w, double x, double y, double z)
public Quaternion(double w, double x, double y, double z)
Initierar en ny instans av klassen Quaternion.
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| w | double | w-komponent i kvaternionen |
| x | double | x-komponent i kvaternionen |
| y | double | y-komponent i kvaternionen |
| z | double | z-komponent i kvaternionen |
Quaternion()
public Quaternion()
IDENTITY
public static final Quaternion IDENTITY
Identitetskvaternionen.
w
public double w
w-komponenten.
x
public double x
x-komponenten.
y
public double y
y-komponenten.
z
public double z
z-komponenten.
add(Quaternion lhs, Quaternion rhs)
public static Quaternion add(Quaternion lhs, Quaternion rhs)
Operatoröverladdning för +
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| lhs | Quaternion | Vänster kvaternion |
| rhs | Quaternion | Höger kvaternion |
Returns: Quaternion - Result quaternion
clone()
public Quaternion clone()
Klona aktuell instans
Returns: Quaternion
concat(Quaternion rhs)
public Quaternion concat(Quaternion rhs)
Konkatenera två kvaternioner
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| rhs | Quaternion |
Returns: Quaternion
conjugate()
public Quaternion conjugate()
Returnerar en konjugerad kvaternion av den aktuella kvaternionen
Returns: Quaternion - The conjugate quaternion.
copyFrom(Quaternion src)
public void copyFrom(Quaternion src)
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| src | Quaternion |
div(Quaternion lhs, double rhs)
public static Quaternion div(Quaternion lhs, double rhs)
Operatoröverladdning för /
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| lhs | Quaternion | Vänster kvaternion |
| rhs | double | Höger kvaternion |
Returns: Quaternion - Result quaternion
dot(Quaternion q)
public double dot(Quaternion q)
Punktprodukt
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| q | Quaternion | Kvaternionen |
Returns: double - Punktvärde
equals(Object obj)
public boolean equals(Object obj)
Kontrollera om två kvaternioner är lika
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| obj | java.lang.Object | Objektet för att kontrollera likhet. |
Returns: boolean - Sant om alla komponenter är identiskt lika.
eulerAngles()
public Vector3 eulerAngles()
Konverterar kvaternion till rotation representerad av Euler-vinklar. Alla komponenter är i radianer.
Returns: Vector3 - Result vector
fromAngleAxis(double a, Vector3 axis)
public static Quaternion fromAngleAxis(double a, Vector3 axis)
Skapar en kvaternion kring given axel och roterar medurs
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| a | double | Medurs rotation i radian |
| axis | Vector3 | Axel |
Returns: Quaternion - Created quaternion
fromEulerAngle(Vector3 eulerAngle)
public static Quaternion fromEulerAngle(Vector3 eulerAngle)
Skapar en kvaternion från given Euler-vinkel
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| eulerAngle | Vector3 | Eulervinkel i radian |
Returns: Quaternion - Created quaternion
fromEulerAngle(double pitch, double yaw, double roll)
public static Quaternion fromEulerAngle(double pitch, double yaw, double roll)
Skapar en kvaternion från given Euler-vinkel
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| nick | double | Nick i radian |
| gir | double | Gir i radian |
| rullning | double | Rullning i radian |
Returns: Quaternion - Created quaternion
fromRotation(Vector3 orig, Vector3 dest)
public static Quaternion fromRotation(Vector3 orig, Vector3 dest)
Skapar en kvaternion som roterar från ursprunglig till destinationsriktning
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| orig | Vector3 | Ursprunglig riktning |
| dest | Vector3 | Målriktning |
Returns: Quaternion - Created quaternion
getClass()
public final native Class<?> getClass()
Returns: java.lang.Class
getLength()
public double getLength()
Hämtar längden på kvaternionen
Returns: double - längden på kvaternionen
hashCode()
public int hashCode()
Hämtar hashkoden för Quaternion
Returns: int - Hashkoden för Quaternion
interpolate(float t, Quaternion from, Quaternion to)
public static Quaternion interpolate(float t, Quaternion from, Quaternion to)
Fyller i denna kvaternion med det interpolerade värdet mellan de givna kvaternionargumenten för ett t mellan från och till.
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| t | float | Koefficienten för interpolering. |
| from | Quaternion | Källkvaternion. |
| to | Quaternion | Målkvaternion. |
Returns: Quaternion - The interpolated quaternion.
inverse()
public Quaternion inverse()
Returnerar en invers kvaternion av den aktuella kvaternionen
Returns: Quaternion - Inverse quaternion.
mul(Quaternion lhs, Quaternion rhs)
public static Quaternion mul(Quaternion lhs, Quaternion rhs)
Operatoröverladdning för *
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| lhs | Quaternion | Vänster kvaternion |
| rhs | Quaternion | Höger kvaternion |
Returns: Quaternion - Result quaternion
mul(Quaternion q, Vector3 v)
public static Vector3 mul(Quaternion q, Vector3 v)
Operatoröverladdning för *
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| q | Quaternion | Rotationskvaternionen |
| v | Vector3 | Vektor att rotera |
Returns: Vector3 - Rotated vector
mul(Quaternion q, Vector4 v)
public static Vector4 mul(Quaternion q, Vector4 v)
Operatoröverladdning för *
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| q | Quaternion | Rotationskvaternionen |
| v | Vector4 | Vektor att rotera |
Returns: Vector4 - Rotated vector
mul(Quaternion lhs, double rhs)
public static Quaternion mul(Quaternion lhs, double rhs)
Operatoröverladdning för *
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| lhs | Quaternion | Vänster kvaternion |
| rhs | double | Höger kvaternion |
Returns: Quaternion - Result quaternion
mul(Vector3 v, Quaternion q)
public static Vector3 mul(Vector3 v, Quaternion q)
Operatoröverladdning för *
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| v | Vector3 | Rotationskvaternionen |
| q | Quaternion | Vektor att rotera |
Returns: Vector3 - Rotated vector
normalize()
public Quaternion normalize()
Normalisera kvaternionen
Returns: Quaternion - Normalized quaternion.
notify()
public final native void notify()
notifyAll()
public final native void notifyAll()
op_eq(Quaternion lhs, Quaternion rhs)
public static boolean op_eq(Quaternion lhs, Quaternion rhs)
Likhetsoperator för kvaternion
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| lhs | Quaternion | Värde på vänstra sidan. |
| rhs | Quaternion | Värde på högra sidan. |
Returns: boolean - Sant om alla komponenter är identiskt lika.
op_ne(Quaternion lhs, Quaternion rhs)
public static boolean op_ne(Quaternion lhs, Quaternion rhs)
Icke-likhetsoperator för kvaternion
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| lhs | Quaternion | Värde på vänstra sidan. |
| rhs | Quaternion | Värde på högra sidan. |
Returns: boolean - Sant om två kvaternioner inte är lika.
slerp(double t, Quaternion v1, Quaternion v2)
public static Quaternion slerp(double t, Quaternion v1, Quaternion v2)
Utför sfärisk linjär interpolation mellan två värden
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| t | double | t är mellan 0 och 1 |
| v1 | Quaternion | Första värdet |
| v2 | Quaternion | Andra värdet |
Returns: Quaternion
toAngleAxis(double[] angle, Vector3 axis)
public void toAngleAxis(double[] angle, Vector3 axis)
Decomponera kvaternionen till vinkel och axel
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| vinkel | double[] | Vinkeln att rotera, i radian. |
| axis | Vector3 | Axeln som roterar kring. |
toMatrix()
public Matrix4 toMatrix()
Konvertera rotationen som presenteras av kvaternionen till en transformmatris.
Returns: Matrix4 - The matrix representation of current quaternion.
toMatrix(Vector3 translation)
public Matrix4 toMatrix(Vector3 translation)
Konvertera rotationen som presenteras av kvaternionen till en transformmatris.
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| translation | Vector3 | Översättningsdelen av matrisen. |
Returns: Matrix4 - The matrix representation of current quaternion.
toString()
public String toString()
Hämtar representationen av kvaternionen som sträng
Returns: java.lang.String - Objektsträng
wait()
public final void wait()
wait(long arg0)
public final void wait(long arg0)
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| arg0 | long |
wait(long arg0, int arg1)
public final void wait(long arg0, int arg1)
Parameters:
| Parameter | Typ | Beskrivning |
|---|---|---|
| arg0 | long | |
| arg1 | int |