42 return m_joints[i].
id();
52 return m_skeletalJointIds;
57 return m_jointBindData[i];
82 return static_cast<unsigned short>(m_ikJointIds.size());
87 return static_cast<unsigned short>(m_skeletalJointIds.size());
117 return m_isConnectedToParent;
122 m_isConnectedToParent = isConnected;
177 return m_forceUseFabrik;
182 m_forceUseFabrik = useFabrik;
187 return m_forceOrientEnd;
192 m_forceOrientEnd = orientEnd;
227 return m_hasPoleVector;
287 return m_start2endBindVector;
292 return m_start2endBindDistance;
298 m_spinePlaneNormal = planeNormal;
299 m_spineBaseSize = baseSize;
304 return m_spinePlaneNormal;
314 return m_spineBaseSize;
JointChain class.
Definition: JointChain.h:31
const std::string & name() const
Gets the jointChain name.
Definition: JointChain.impl.h:10
const unsigned int spineJointId() const
Get spine joint id.
Definition: JointChain.impl.h:307
void setIsEffector(bool isEffector)
Sets if this chain is effector.
Definition: JointChain.impl.h:160
unsigned short numSkeletalJointIds() const
Gets the number of joints in the skeleton between start and end (both included)
Definition: JointChain.impl.h:85
void setForceUseFabrik(bool useFabrik)
Sets if this chain computes forced fabrik.
Definition: JointChain.impl.h:180
double start2endBindDistance() const
Gets distance from start to end in bind pose.
Definition: JointChain.impl.h:290
void setForceOrientEnd(bool orientEnd)
Sets if this chain orients the end joint after IK solver.
Definition: JointChain.impl.h:190
unsigned short pelvisId() const
Gets the pelvis id.
Definition: JointChain.impl.h:265
unsigned short footTip() const
Gets the footTip.
Definition: JointChain.impl.h:245
unsigned short footIk() const
Gets the foot ik.
Definition: JointChain.impl.h:255
bool isConnectedToParent() const
Gets if this chain is directly connected to parent joint chain.
Definition: JointChain.impl.h:115
const JointChain * parent() const
Gets the parent joint chain.
Definition: JointChain.impl.h:95
void setHasFootTip(bool hasFoot)
Sets if this chain contains foot ik.
Definition: JointChain.impl.h:200
void setIsConnectedToParent(bool isConnected)
Sets if this chain is directly connected to parent joint chain.
Definition: JointChain.impl.h:120
void setJoint(const Joint &joint, unsigned short i)
Sets the joint at index i.
Definition: JointChain.impl.h:60
const JointPtr start() const
Gets the start joint.
Definition: JointChain.impl.h:105
void setHasFootIk(bool hasFootIk)
Sets if this chain contains foot tip.
Definition: JointChain.impl.h:210
void setIsCenter(bool isCenter)
Sets if this chain is centered.
Definition: JointChain.impl.h:170
bool isSpine() const
Gets if this chain is a spine.
Definition: JointChain.impl.h:135
unsigned short id() const
Gets the jointChain id.
Definition: JointChain.impl.h:30
bool isLimb() const
Gets if this chain is a limb.
Definition: JointChain.impl.h:145
double length() const
Gets length of the chain.
Definition: JointChain.impl.h:275
AtomsCore::Vector3 start2endBindVector() const
Gets distance vector from start to end in bind pose.
Definition: JointChain.impl.h:285
bool isEffector() const
Gets if this chain is a effector.
Definition: JointChain.impl.h:155
Joint & joint(unsigned short i)
Gets a joint.
bool hasFootIk() const
Gets if this chain contains foot ik.
Definition: JointChain.impl.h:205
AtomsCore::Vector3 poleVector() const
Gets this chain pole vector.
Definition: JointChain.impl.h:235
const double spineBaseSize() const
Get spine joint id.
Definition: JointChain.impl.h:312
const JointPtr end() const
Gets the end joint.
Definition: JointChain.impl.h:110
void setParentSpine(unsigned short spineJointId, const AtomsCore::Vector3 &planeNormal, double baseSize)
Set parent spine information.
Definition: JointChain.impl.h:295
void setPoleVector(AtomsCore::Vector3 poleVector)
Sets this chain pole vector.
Definition: JointChain.impl.h:240
void setHasPelvis(bool hasPelvis)
Sets if this chain contains pelvis.
Definition: JointChain.impl.h:220
bool isRoot() const
Gets if this chain is root.
Definition: JointChain.impl.h:125
bool hasPoleVector() const
Gets if this chain has pole vector.
Definition: JointChain.impl.h:225
void setId(unsigned short id)
Sets the jointChain id.
Definition: JointChain.impl.h:35
bool hasFootTip() const
Gets if this chain contains foot tip.
Definition: JointChain.impl.h:195
void setJointId(unsigned short id, unsigned short i)
Sets the joint at index i.
Definition: JointChain.impl.h:65
unsigned short numIkJoints() const
Gets the number of joints available for IK solvers.
Definition: JointChain.impl.h:80
const std::vector< unsigned short > & ikJointIds() const
Gets the vector of joint ids in skeleton which are available for IK solvers.
Definition: JointChain.impl.h:45
void setIsSpine(bool isSpine)
Sets if this chain is spine.
Definition: JointChain.impl.h:140
void setFootTip(unsigned short footTip)
Sets the footTip.
Definition: JointChain.impl.h:250
const std::string & fullName() const
Gets the jointChain full name.
Definition: JointChain.impl.h:20
void setIkJointIds(std::vector< unsigned short > ikIds)
Sets the joint ids vector.
Definition: JointChain.impl.h:70
bool hasPelvis() const
Gets if this chain contains pelvis.
Definition: JointChain.impl.h:215
void setPelvisId(unsigned short pelvisId)
Sets the pelvis id.
Definition: JointChain.impl.h:270
const std::vector< unsigned short > & skeletalJointIds() const
Gets the vector of joint ids in skeleton between start and end (both included)
Definition: JointChain.impl.h:50
bool forceOrientEnd() const
Gets if this chain orients the end joint after IK solver.
Definition: JointChain.impl.h:185
void setFullName(const std::string &fullName)
Sets the jointChain full name.
Definition: JointChain.impl.h:25
unsigned short numJoints() const
Gets the number of joints.
Definition: JointChain.impl.h:75
void setIsRoot(bool isRoot)
Sets if this chain is root.
Definition: JointChain.impl.h:130
void setIsLimb(bool isLimb)
Sets if this chain is limb.
Definition: JointChain.impl.h:150
void setParent(JointChain &parent)
Refresh pointer to the parent joint chain.
Definition: JointChain.impl.h:100
void setFootIk(unsigned short footIk)
Sets the foot ik.
Definition: JointChain.impl.h:260
const std::vector< unsigned short > & jointIds() const
Gets the joint ids in skeleton.
Definition: JointChain.impl.h:90
unsigned short jointId(unsigned short i) const
Gets the id in skeleton of the joint at index i.
Definition: JointChain.impl.h:40
bool forceUseFabrik() const
Gets if this chain computes forced fabrik.
Definition: JointChain.impl.h:175
void setName(const std::string &name)
Sets the jointChain name.
Definition: JointChain.impl.h:15
const AtomsCore::Vector3 & spinePlaneNormal() const
Get spine plane normal.
Definition: JointChain.impl.h:302
const BindData & bindData(unsigned short i) const
Gets the bind data of the joint at index i.
Definition: JointChain.impl.h:55
void setLength(double len)
Set length of the chain.
Definition: JointChain.impl.h:280
void setHasPoleVector(bool hasPoleVector)
Sets if this chain has pole vector.
Definition: JointChain.impl.h:230
bool isCenter() const
Gets if this chain is centered.
Definition: JointChain.impl.h:165
Joint class.
Definition: Joint.h:30
unsigned short id() const
Gets the joint id.
Definition: Joint.impl.h:20
AtomsCore namespace.
Definition: Agent.h:344
AtomsMath::Vector3 Vector3
Vector3 class.
Definition: AtomsMath.h:57
Definition: JointChain.h:36