class M_Bone

The M_Bone class represents one bone in a skeleton.

Member Functions

string Name()

Returns the name of the bone.

Return value (string): the name of the bone

void SetName(name)

Sets the name of the bone.

Return value: none
name (string): the name of the bone

Member Variables

fSelected (bool)

true if the bone is selected, otherwise false


fName (LM_String)

the name of the bone


fParent (int)

an id number to the bone's parent bone (-1 if the bone has no parent)


fAngleControlParent (int)

an id number to the bone's angle control bone (-1 if the bone has no angle control)


fAngleControlScale (float)

the scale value for the bone's angle control


fPosControlParent (int)

an id number to the bone's position control bone (-1 if the bone has no position control)


fPosControlScale (LM_Vector2)

the scale value for the bone's position control


fScaleControlParent (int)

an id number to the bone's scale control bone (-1 if the bone has no scale control)


fScaleControlScale (float)

the scale value for the bone's scale control


fLength (float)

the bone's length


fStrength (float)

the bone's strength


fOffset (LM_Vector2)

the bone's 2D offset value


fAnimPos (AnimVec2)

the bone's animated position


fAnimAngle (AnimVal)

the bon'e animated angle


fAnimScale (AnimVal)

the bone's animated scale


fConstraints (bool)

true if the bone has min/max angle constraints, otherwise false


fMinConstraint (float)

minimum angle


fMaxConstraint (float)

maximum angle


fPos (LM_Vector2)

the bone's current position


fAngle (float)

the bone's current angle


fScale (float)

the bone's current scale


fTempPos (LM_Vector2)

a temporary variable to store the position


fTempLength (float)

a temporary variable to store the length


fTempAngle (float)

a temporary variable to store the angle


fTempScale (float)

a temporary variable to store the scale


fIKLock (AnimBool)

the bone's IK lock animation channel


fIKParentTarget (AnimVec2)

the bone's IK target animation channel


fIKGlobalAngle (AnimVal)

the bone's IK angle animation channel


fBoneDynamics (bool)

true if bone dynamics are on for this bone


fTorqueForce (float)

the influence of torque on bone dynamics


fSpringForce (float)

the influence of springiness on bone dynamics


fDampingForce (float)

the influence of damping on bone dynamics


fRestMatrix (LM_Matrix)

the transformation matrix for the bone at rest


fMovedMatrix (LM_Matrix)

the transformation matrix for the bone's current alignment


fPtMatrix (LM_Matrix)

the transformation matrix for the influence the bone has over vector points

class M_Bone {
  const char *Name();
  void SetName(const char *name);
 
  bool    fSelected;
 
  LM_String  fName;
  int32    fParent;
  int32    fAngleControlParent;
  real    fAngleControlScale;
  int32    fPosControlParent;
  LM_Vector2  fPosControlScale;
  int32    fScaleControlParent;
  real    fScaleControlScale;
  real    fLength;
  real    fStrength;
  real    fPhysicsRadius;
  bool    fPhysicsReturnToZero;
  AnimVal    fPhysicsMotorSpeed;
  real    fPhysicsTorque;
  bool    fPhysicsLockTip;
  LM_Vector2  fOffset;
  AnimVec2  fAnimPos;
  AnimVal    fAnimAngle;
  AnimVal    fAnimScale;
  bool    fConstraints;
  real    fMinConstraint;
  real    fMaxConstraint;
 
  LM_Vector2  fPos;
  real    fAngle;
  real    fScale;
 
  LM_Vector2  fTempPos;
  real    fTempLength;
  real    fTempAngle;
  real    fTempScale;
 
  AnimBool  fIKLock;
  AnimVec2  fIKParentTarget;
  AnimVal    fIKGlobalAngle;
 
  AnimBool  fBoneDynamics;
  real    fTorqueForce;
  real    fSpringForce;
  real    fDampingForce;
 
  LM_Matrix  fRestMatrix;
  LM_Matrix  fMovedMatrix;
  LM_Matrix  fPtMatrix;
};