MeshLib Java Docs
Loading...
Searching...
No Matches
Inheritance diagram for meshlib.Quaterniond:

Public Member Functions

 Quaterniond (java.lang.foreign.MemorySegment ptr, boolean owned, java.lang.Object owner)
 Quaterniond ()
 Quaterniond (meshlib.Quaterniond _other)
 Quaterniond (double a, double b, double c, double d)
 Quaterniond (double real, meshlib.Vector3d im)
 Quaterniond (meshlib.Matrix3d m)
 Quaterniond (meshlib.Vector3d from, meshlib.Vector3d to)
meshlib.Matrix3d convertTo_MR_Matrix3d ()
meshlib.Quaterniond assignFromAnother (meshlib.Quaterniond _other)
meshlib.Vector3d im ()
double angle ()
meshlib.Vector3d axis ()
double normSq ()
double norm ()
meshlib.Quaterniond opSub ()
void normalize ()
meshlib.Quaterniond normalized ()
meshlib.Quaterniond conjugate ()
meshlib.Quaterniond inverse ()
meshlib.Vector3d call (meshlib.Vector3d p)
meshlib.Quaterniond mul_assign (double s)
meshlib.Quaterniond div_assign (double s)
double a ()
void setA (double value)
double b ()
void setB (double value)
double c ()
void setC (double value)
double d ()
void setD (double value)
Public Member Functions inherited from meshlib.CppObject
final java.lang.foreign.MemorySegment rawPointer ()
final boolean isOwned ()
final void close ()
final java.lang.foreign.MemorySegment release ()

Static Public Member Functions

static meshlib.Quaterniond lerp (meshlib.Quaterniond q0, meshlib.Quaterniond q1, double t)
static meshlib.Quaterniond slerp (meshlib.Quaterniond q0, meshlib.Quaterniond q1, double t)
static meshlib.Matrix3d slerp (meshlib.Matrix3d m0, meshlib.Matrix3d m1, double t)
static meshlib.AffineXf3d slerp (meshlib.AffineXf3d xf0, meshlib.AffineXf3d xf1, double t, meshlib.Vector3d p)

(Note that these are not member symbols.)

 Quaterniond (meshlib.Vector3d axis, double angle)

Additional Inherited Members

Protected Member Functions inherited from meshlib.CppObject
 CppObject (java.lang.foreign.MemorySegment ptr, java.util.function.Consumer< java.lang.foreign.MemorySegment > destroy, java.lang.Object owner)

Detailed Description

Represents a quaternion following the notations from https://en.wikipedia.org/wiki/Quaternion Generated from class MR::Quaterniond.

Instances created here own their C++ objects, see CppObject.

Constructor & Destructor Documentation

◆ Quaterniond() [1/7]

meshlib.Quaterniond.Quaterniond ( java.lang.foreign.MemorySegment ptr,
boolean owned,
java.lang.Object owner )

Wraps a pointer from the C bindings. If owned, the object is destroyed when the wrapper dies. owner is kept alive as long as this wrapper is. Not for normal use.

◆ Quaterniond() [2/7]

meshlib.Quaterniond.Quaterniond ( )

Constructs an empty (default-constructed) instance.

Calls MR_Quaterniond_DefaultConstruct().

◆ Quaterniond() [3/7]

meshlib.Quaterniond.Quaterniond ( meshlib.Quaterniond _other)

Generated from constructor MR::Quaterniond::Quaterniond. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object.

Calls MR_Quaterniond_ConstructFromAnother().

◆ Quaterniond() [4/7]

meshlib.Quaterniond.Quaterniond ( double a,
double b,
double c,
double d )

Generated from constructor MR::Quaterniond::Quaterniond.

Calls MR_Quaterniond_Construct_4().

◆ Quaterniond() [5/7]

meshlib.Quaterniond.Quaterniond ( double real,
meshlib.Vector3d im )

Generated from constructor MR::Quaterniond::Quaterniond. The reference to the parameter im might be preserved in the constructed object.

Calls MR_Quaterniond_Construct_2_double().

◆ Quaterniond() [6/7]

meshlib.Quaterniond.Quaterniond ( meshlib.Matrix3d m)

Generated from constructor MR::Quaterniond::Quaterniond. The reference to the parameter m might be preserved in the constructed object.

Calls MR_Quaterniond_Construct_1().

◆ Quaterniond() [7/7]

meshlib.Quaterniond.Quaterniond ( meshlib.Vector3d from,
meshlib.Vector3d to )

finds shorter arc rotation quaternion from one vector to another Generated from constructor MR::Quaterniond::Quaterniond. The reference to the parameter from might be preserved in the constructed object. The reference to the parameter to might be preserved in the constructed object.

Calls MR_Quaterniond_Construct_2_const_MR_Vector3d_ref_MR_Vector3d().

Member Function Documentation

◆ a()

double meshlib.Quaterniond.a ( )

< real part of the quaternion Returns a pointer to a member variable of class MR::Quaterniond named a. The reference to this object might be preserved as the return value.

Calls MR_Quaterniond_Get_a().

◆ angle()

double meshlib.Quaterniond.angle ( )

returns angle of rotation encoded in this quaternion Generated from method MR::Quaterniond::angle.

Calls MR_Quaterniond_angle().

◆ assignFromAnother()

meshlib.Quaterniond meshlib.Quaterniond.assignFromAnother ( meshlib.Quaterniond _other)

Generated from method MR::Quaterniond::operator=. The reference to things referred to by the parameter _other (if any) might be preserved in this object.

Calls MR_Quaterniond_AssignFromAnother().

◆ axis()

meshlib.Vector3d meshlib.Quaterniond.axis ( )

returns axis of rotation encoded in this quaternion Generated from method MR::Quaterniond::axis.

Calls MR_Quaterniond_axis().

◆ b()

double meshlib.Quaterniond.b ( )

< imaginary part: b*i + c*j + d*k Returns a pointer to a member variable of class MR::Quaterniond named b. The reference to this object might be preserved as the return value.

Calls MR_Quaterniond_Get_b().

◆ c()

double meshlib.Quaterniond.c ( )

< imaginary part: b*i + c*j + d*k Returns a pointer to a member variable of class MR::Quaterniond named c. The reference to this object might be preserved as the return value.

Calls MR_Quaterniond_Get_c().

◆ call()

meshlib.Vector3d meshlib.Quaterniond.call ( meshlib.Vector3d p)

for unit quaternion returns the rotation of point p, which is faster to compute for single point; for multiple points it is faster to create matrix representation and apply it to the points Generated from method MR::Quaterniond::operator().

Calls MR_Quaterniond_call().

◆ conjugate()

meshlib.Quaterniond meshlib.Quaterniond.conjugate ( )

computes conjugate quaternion, which for unit quaternions encodes the opposite rotation Generated from method MR::Quaterniond::conjugate.

Calls MR_Quaterniond_conjugate().

◆ convertTo_MR_Matrix3d()

meshlib.Matrix3d meshlib.Quaterniond.convertTo_MR_Matrix3d ( )

converts this into 3x3 rotation matrix Generated from conversion operator MR::Quaterniond::operator MR::Matrix3d.

Calls MR_Quaterniond_ConvertTo_MR_Matrix3d().

◆ d()

double meshlib.Quaterniond.d ( )

< imaginary part: b*i + c*j + d*k Returns a pointer to a member variable of class MR::Quaterniond named d. The reference to this object might be preserved as the return value.

Calls MR_Quaterniond_Get_d().

◆ div_assign()

meshlib.Quaterniond meshlib.Quaterniond.div_assign ( double s)

Generated from method MR::Quaterniond::operator/=. The reference to this object might be preserved in the return value.

Calls MR_Quaterniond_div_assign().

◆ im()

meshlib.Vector3d meshlib.Quaterniond.im ( )

returns imaginary part of the quaternion as a vector Generated from method MR::Quaterniond::im.

Calls MR_Quaterniond_im().

◆ inverse()

meshlib.Quaterniond meshlib.Quaterniond.inverse ( )

computes reciprocal quaternion Generated from method MR::Quaterniond::inverse.

Calls MR_Quaterniond_inverse().

◆ lerp()

meshlib.Quaterniond meshlib.Quaterniond.lerp ( meshlib.Quaterniond q0,
meshlib.Quaterniond q1,
double t )
static

given t in [0,1], interpolates linearly two quaternions giving in general not-unit quaternion Generated from method MR::Quaterniond::lerp.

Calls MR_Quaterniond_lerp().

◆ mul_assign()

meshlib.Quaterniond meshlib.Quaterniond.mul_assign ( double s)

Generated from method MR::Quaterniond::operator*=. The reference to this object might be preserved in the return value.

Calls MR_Quaterniond_mul_assign().

◆ norm()

double meshlib.Quaterniond.norm ( )

Generated from method MR::Quaterniond::norm.

Calls MR_Quaterniond_norm().

◆ normalize()

void meshlib.Quaterniond.normalize ( )

scales this quaternion to make its norm unit Generated from method MR::Quaterniond::normalize.

Calls MR_Quaterniond_normalize().

◆ normalized()

meshlib.Quaterniond meshlib.Quaterniond.normalized ( )

Generated from method MR::Quaterniond::normalized.

Calls MR_Quaterniond_normalized().

◆ normSq()

double meshlib.Quaterniond.normSq ( )

Generated from method MR::Quaterniond::normSq.

Calls MR_Quaterniond_normSq().

◆ opSub()

meshlib.Quaterniond meshlib.Quaterniond.opSub ( )

returns quaternion representing the same rotation, using the opposite rotation direction and opposite angle Generated from method MR::Quaterniond::operator-.

Calls MR_neg_MR_Quaterniond().

◆ setA()

void meshlib.Quaterniond.setA ( double value)

< real part of the quaternion Modifies a member variable of class MR::Quaterniond named a.

Calls MR_Quaterniond_Set_a().

◆ setB()

void meshlib.Quaterniond.setB ( double value)

< imaginary part: b*i + c*j + d*k Modifies a member variable of class MR::Quaterniond named b.

Calls MR_Quaterniond_Set_b().

◆ setC()

void meshlib.Quaterniond.setC ( double value)

< imaginary part: b*i + c*j + d*k Modifies a member variable of class MR::Quaterniond named c.

Calls MR_Quaterniond_Set_c().

◆ setD()

void meshlib.Quaterniond.setD ( double value)

< imaginary part: b*i + c*j + d*k Modifies a member variable of class MR::Quaterniond named d.

Calls MR_Quaterniond_Set_d().

◆ slerp() [1/3]

meshlib.AffineXf3d meshlib.Quaterniond.slerp ( meshlib.AffineXf3d xf0,
meshlib.AffineXf3d xf1,
double t,
meshlib.Vector3d p )
static

given t in [0,1] and rigid transformations, interpolates them spherically and produces another rigid transformation; p is the only point that will have straight line movement during interpolation Generated from method MR::Quaterniond::slerp.

Calls MR_Quaterniond_slerp_4().

◆ slerp() [2/3]

meshlib.Matrix3d meshlib.Quaterniond.slerp ( meshlib.Matrix3d m0,
meshlib.Matrix3d m1,
double t )
static

given t in [0,1] and two rotation matrices, interpolates them spherically and produces another rotation matrix Generated from method MR::Quaterniond::slerp.

Calls MR_Quaterniond_slerp_3_MR_Matrix3d().

◆ slerp() [3/3]

meshlib.Quaterniond meshlib.Quaterniond.slerp ( meshlib.Quaterniond q0,
meshlib.Quaterniond q1,
double t )
static

given t in [0,1] and two unit quaternions, interpolates them spherically and produces another unit quaternion Generated from method MR::Quaterniond::slerp.

Calls MR_Quaterniond_slerp_3_MR_Quaterniond().

◆ Quaterniond()

Quaterniond ( meshlib.Vector3d axis,
double angle )
related

Generated from constructor MR::Quaterniond::Quaterniond. The reference to the parameter axis might be preserved in the constructed object.

Calls MR_Quaterniond_Construct_2_const_MR_Vector3d_ref_double().


The documentation for this class was generated from the following file: