Euler (struct)

The Euler type represents a 3D rotation as Euler X, Y, and Z angles and a RotationOrder. The X, Y, and Z angles are expressed in radians. The Euler type also provides conversion methods to Mat33.

参考

Quat

/*
** Example: Construct Euler
*/

RotationOrder ro('xyz');
Euler euler(0.0, PI, 0.0, ro);
Mat33 matrix = euler.toMat33();

Euler Euler Euler

Members

Scalar x  
Scalar y  
Scalar z  
RotationOrder ro  

Methods

  Euler ( in Euler other )
  Euler ( in Scalar x, in Scalar y, in Scalar z )
  Euler ( in Scalar x, in Scalar y, in Scalar z, in RotationOrder order )
  Euler ( in Vec3 angles )
  Euler ( in Vec3 angles, in RotationOrder order )
  Euler ()
Boolean almostEqual ? ( in Euler other, in Scalar precision )
Euler clone ? ()
Boolean equal ? ( in Euler other )
Vec3 getAngles ? ()
UInt32 hash ? ()
  set ! ( in Scalar x, in Scalar y, in Scalar z )
  set ! ( in Scalar x, in Scalar y, in Scalar z, in RotationOrder order )
  set ! ( in Vec3 angles )
  set ! ( in Vec3 angles, in RotationOrder order )
  setAngles ! ( in Vec3 angles )
Mat33 toMat33 ? ()

Operators

  - Euler
Euler = ( Param other )

Methods in detail

Euler ( in Euler other )

copy constructor


Euler ( in Scalar x, in Scalar y, in Scalar z )

Constructor using three Scalars as angles in radians, RotationOrder = XYZ


Euler ( in Scalar x, in Scalar y, in Scalar z, in RotationOrder order )

Constructor using three Scalars as angles in radians and a RotationOrder


Euler ( in Vec3 angles )

Constructor using a Vec3 as angles in radians, RotationOrder = XYZ


Euler ( in Vec3 angles, in RotationOrder order )

Constructor using a Vec3 as radians and a RotationOrder


Euler ()

Default constructor


Boolean Euler.almostEqual? ( in Euler other, in Scalar precision )

Returns true if this Euler is almost the same as another one (based on a precision)


Euler Euler.clone? ()

clone method


Boolean Euler.equal? ( in Euler other )

Returns true if this Euler is the same as another one (precisely)


Vec3 Euler.getAngles? ()

Returns the angles as a Vec3 in radians


UInt32 Euler.hash? ()

Hash for this value


Euler.set! ( in Scalar x, in Scalar y, in Scalar z )

Setter using three Scalars as angles in radians, RotationOrder = XYZ


Euler.set! ( in Scalar x, in Scalar y, in Scalar z, in RotationOrder order )

Setter using three Scalars as angles in radians and a RotationOrder


Euler.set! ( in Vec3 angles )

Setter using a Vec3 as angles in radians, RotationOrder = XYZ


Euler.set! ( in Vec3 angles, in RotationOrder order )

Setter using a Vec3 as radians and a RotationOrder


Euler.setAngles! ( in Vec3 angles )

Setter using a Vec3 as angles in radians, RotationOrder = XYZ


Mat33 Euler.toMat33? ()

Converts the Euler to a Mat33 representing the same 3D rotation transformation

Operators in detail

unary -


Euler = ( Param other )

Adds another Euler to this one