Similarity3f
Represents a Similarity Transformation in 3D that is composed of a Uniform Scale and a subsequent Euclidean transformation (3D rotation Rot and a subsequent translation by a 3D vector Trans). This is an angle preserving Transformation.
Constructors
Constructor | Description |
new(scale, euclideanTransformation)
Signature: (scale:float32 * euclideanTransformation:Euclidean3f) -> unit
|
Creates a similarity transformation from an uniform scale by factor , and a (subsequent) rigid transformation . |
new(euclideanTransformation, scale)
Signature: (euclideanTransformation:Euclidean3f * scale:float32) -> unit
|
Creates a similarity transformation from a rigid transformation and an (subsequent) uniform scale by factor . |
new(m, epsilon)
Signature: (m:M44f * epsilon:float32) -> unit
|
Instance members
Instance member | Description |
Equals(other)
Signature: other:obj -> bool
Modifiers: abstract |
|
GetHashCode()
Signature: unit -> int
Modifiers: abstract |
|
Inverse
Signature: Similarity3f
|
Gets the (multiplicative) inverse of this Similarity transformation. [1/Scale, Rot^T,-Rot^T Trans/Scale] |
Invert()
Signature: unit -> unit
|
Inverts this similarity transformation (multiplicative inverse). this = [1/Scale, Rot^T,-Rot^T Trans/Scale] |
InvTransformDir(v)
Signature: v:V3f -> V3f
|
Transforms direction vector v (v.w is presumed 0.0) by the inverse of this similarity transformation. Actually, only the rotation is used. |
InvTransformPos(p)
Signature: p:V3f -> V3f
|
Transforms point p (p.w is presumed 1.0) by the inverse of this similarity transformation. |
Normalize()
Signature: unit -> unit
|
Normalizes the rotation quaternion. |
Normalized
Signature: Similarity3f
|
Returns a new version of this Similarity transformation with a normalized rotation quaternion. |
Rot
Signature: Rot3f
|
Shortcut for Rot of EuclideanTransformation |
ToString()
Signature: unit -> string
Modifiers: abstract |
|
Trans
Signature: V3f
|
Shortcut for Trans of EuclideanTransformation |
TransformDir(v)
Signature: v:V3f -> V3f
|
Transforms direction vector v (v.w is presumed 0.0) by this similarity transformation. Actually, only the rotation is used. |
TransformPos(p)
Signature: p:V3f -> V3f
|
Transforms point p (p.w is presumed 1.0) by this similarity transformation. |
Static members
Static member | Description |
ApproxEqual(t0, t1)
Signature: (t0:Similarity3f * t1:Similarity3f) -> bool
|
|
ApproxEqual(...)
Signature: (t0:Similarity3f * t1:Similarity3f * angleTol:float32 * posTol:float32 * scaleTol:float32) -> bool
|
|
InvTransformDir(t, v)
Signature: (t:Similarity3f * v:V3f) -> V3f
|
Transforms direction vector v (v.w is presumed 0.0) by the inverse of the similarity transformation t. Actually, only the rotation is used. |
InvTransformPos(t, p)
Signature: (t:Similarity3f * p:V3f) -> V3f
|
Transforms point p (p.w is presumed 1.0) by the inverse of the similarity transformation t. |
Multiply(a, b)
Signature: (a:Similarity3f * b:Similarity3f) -> Similarity3f
|
Multiplies 2 Similarity transformations. This concatenates the two similarity transformations into a single one, first b is applied, then a. Attention: Multiplication is NOT commutative! |
Multiply(a, b)
Signature: (a:Similarity3f * b:Euclidean3f) -> Similarity3f
|
Multiplies a Similarity transformation by an Euclidean transformation. This concatenates the two transformations into a single one, first b is applied, then a. Attention: Multiplication is NOT commutative! |
Multiply(a, b)
Signature: (a:Euclidean3f * b:Similarity3f) -> Similarity3f
|
Multiplies an Euclidean transformation by a Similarity transformation. This concatenates the two transformations into a single one, first b is applied, then a. Attention: Multiplication is NOT commutative! |
op_Equality(t0, t1)
Signature: (t0:Similarity3f * t1:Similarity3f) -> bool
|
|
op_Explicit(t)
Signature: t:Similarity3f -> M34f
|
|
op_Explicit(t)
Signature: t:Similarity3f -> M44f
|
|
op_Inequality(t0, t1)
Signature: (t0:Similarity3f * t1:Similarity3f) -> bool
|
|
op_Multiply(a, b)
Signature: (a:Similarity3f * b:Similarity3f) -> Similarity3f
|
|
op_Multiply(a, b)
Signature: (a:Euclidean3f * b:Similarity3f) -> Similarity3f
|
|
op_Multiply(a, b)
Signature: (a:Similarity3f * b:Euclidean3f) -> Similarity3f
|
|
Parse(s)
Signature: s:string -> Similarity3f
|
|
TransformDir(t, v)
Signature: (t:Similarity3f * v:V3f) -> V3f
|
Transforms direction vector v (v.w is presumed 0.0) by similarity transformation t. Actually, only the rotation is used. |
TransformPos(t, p)
Signature: (t:Similarity3f * p:V3f) -> V3f
|
Transforms point p (p.w is presumed 1.0) by similarity transformation t. |