Click or drag to resize
DigitalRuneDirectBoneMapper Class
Copies a bone transform from one skeleton to the other skeleton.
Inheritance Hierarchy
SystemObject
  DigitalRune.Animation.CharacterBoneMapper
    DigitalRune.Animation.CharacterDirectBoneMapper

Namespace: DigitalRune.Animation.Character
Assembly: DigitalRune.Animation (in DigitalRune.Animation.dll) Version: 1.4.0.0 (1.4.1.14427)
Syntax
public class DirectBoneMapper : BoneMapper

The DirectBoneMapper type exposes the following members.

Constructors
  NameDescription
Public methodDirectBoneMapper
Initializes a new instance of the DirectBoneMapper class.
Top
Methods
  NameDescription
Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Public methodEstimateScale
Analyzes the skeletons and sets ScaleAToB to a guessed scale factor.
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetHashCode
Serves as a hash function for a particular type.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodInvalidate
Invalidates all cached data of this bone mapper.
(Inherited from BoneMapper.)
Public methodMapAToB
Sets the bone transform in the second skeleton to match skeleton pose of the first skeleton.
(Inherited from BoneMapper.)
Public methodMapBToA
Sets the bone transform in the first skeleton to match skeleton pose of the second skeleton.
(Inherited from BoneMapper.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Protected methodOnInvalidate (Overrides BoneMapperOnInvalidate.)
Protected methodOnMapAToB (Overrides BoneMapperOnMapAToB.)
Protected methodOnMapBToA (Overrides BoneMapperOnMapBToA.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
Properties
  NameDescription
Public propertyBoneIndexA
Gets or sets the bone index for the first skeleton.
Public propertyBoneIndexB
Gets or sets the bone index for the second skeleton.
Public propertyDirection
Gets or sets the desired mapping direction.
(Inherited from BoneMapper.)
Public propertyMapAbsoluteTransforms
Gets or sets a value indicating whether the mapping is performed in model space.
Public propertyMapTranslations
Gets or sets a value indicating whether translations are mapped or ignored. (If MapAbsoluteTransforms is set, translations are always ignored and this property is not used.)
Public propertyScaleAToB
Gets or sets the scale of second skeleton relative to the first skeleton. (Only relevant if bone translations are mapped.)
Public propertySkeletonMapper
Gets or sets the skeleton mapper. (This property is set automatically and should be treated as read-only.)
(Inherited from BoneMapper.)
Top
Remarks

This is the simplest BoneMapper. It simply reads the bone transform of the bone in the first skeleton and sets the same bone transform in the bone in the second skeleton. This mapping can be used if the mapped skeletons and bone orientations (in the bind pose) are very similar.

The DirectBoneMapper works either in local bone space or in model space (see MapAbsoluteTransforms). Per default, it works in local bone space (MapAbsoluteTransforms is ). When working in local bone space, the bone mapper will transfer all orientation changes relative to the parent bones; for example, if the bone in the source skeleton was rotate up by 90°, it will also be rotated up by 90° in the target skeleton. When working in model space (MapAbsoluteTransforms is ) the bone mapper will transfer the absolute bone pose relative to the model space; for example, if the bone in the source skeleton is pointing down (relative to model space), the bone in the target skeleton will also be rotated so that it points down.

See Also