Assembly: DigitalRune.Geometry (in DigitalRune.Geometry.dll) Version: 1.9.0.0 (1.9.3.9490)
Syntax
| C# |
|---|
[SerializableAttribute] public struct Pose : IEquatable<Pose> |
| Visual Basic |
|---|
<SerializableAttribute> _ Public Structure Pose _ Implements IEquatable(Of Pose) |
| Visual C++ |
|---|
[SerializableAttribute] public value class Pose : IEquatable<Pose> |
Remarks
This type represents an affine transformation consisting only of a rotation followed by a translation - no scaling. This transformation transforms coordinates from local space to world space (or a parent space). Every IGeometricObject has a Pose which defines position and orientation of the figure in the parent's space which is usually the world space.
For hierarchical objects, like CompositeShapes, a pose defines the relationship of a local coordinates system to a parent coordinate system. For example: The children of a CompositeShape are of type IGeometricObject. So each child of a CompositeShape has a Pose which defines the position and orientation of the child in the local space of the CompositeShape. The local space of the CompositeShape is the parent space of the child.
Important: When creating a new Pose do not use Pose p = new Pose(); instead use Pose p = Pose.Identity. The constructor new Pose() initializes the orientation quaternion elements with 0 and thus is not a valid transformation.
Notes: The name "pose" comes from the definition: "to pose = to put or set in place".