Skip to main content

NodeJoint

The NodeJoint class represents a Scene Node that attaches to another Node or ObjectNode instance and inherits its transformation. It enables joint-based relationships by fetching the transformation from a target node with optional application of a pivot transformation matrix. This is useful for attaching objects to skeletons or other dynamic objects within the Scene. The normalization option provides correct transformation when the target includes scaling.

#include <scene/TellusimNodeJoint.h>

Inheritance

  • Inherits from Node

Constructors

explicit NodeJoint(const char *name = nullptr)
explicit NodeJoint(Graph &graph, const char *name = nullptr)
explicit NodeJoint(Node *parent, const char *name = nullptr)
NodeJoint(Graph &graph, const Node &joint, const char *name = nullptr)
NodeJoint(Node *parent, const Node &joint, const char *name = nullptr)
NodeJoint(Graph &graph, const Node &joint, const ObjectNode &node, const char *name = nullptr)
NodeJoint(Node *parent, const Node &joint, const ObjectNode &node, const char *name = nullptr)

Methods

Normalize flag.

void setNormalize(bool enabled)
bool getNormalize() const

Node joint.

void setJoint(const Node &joint)
void setJoint(const Node &joint, const ObjectNode &node)
const Node getJoint() const
Node getJoint()

Object node.

uint32_t getNodeIndex() const
const ObjectNode getObjectNode() const
ObjectNode getObjectNode()

Pivot transform.

void setPivotTransform(Matrix4x3f transform, bool force = false, bool atomic = false)
const Matrix4x3f getPivotTransform() const