![]() |
Murl Engine API
Version 2018.3
|
The IJoint graph node interface. More...
#include <murl_graph_i_joint.h>
The IJoint graph node interface.
Joint nodes are used in the framework's physics simulator to connect two Graph::IBody nodes, or to connect a single Graph::IBody node to a specific point in world space. There exist different joint types (e.g. Graph::IBallJoint or Graph::IHingeJoint), each of which enforces different constraints on the connection.
Public Member Functions | |
virtual INode * | GetNodeInterface ()=0 |
Get the mutable Graph::INode interface. More... | |
virtual const INode * | GetNodeInterface () const =0 |
Get the constant Graph::INode interface. More... | |
virtual ITransform * | GetTransformInterface ()=0 |
Get the mutable Graph::ITransform interface. More... | |
virtual const ITransform * | GetTransformInterface () const =0 |
Get the constant Graph::ITransform interface. More... | |
virtual IBodyNodeTarget * | GetBodyNodeTarget ()=0 |
Get the mutable Graph::IBodyNodeTarget container. More... | |
virtual const IBodyNodeTarget * | GetBodyNodeTarget () const =0 |
Get the constant Graph::IBodyNodeTarget container. More... | |
virtual Bool | SetBodyPosition (UInt32 index, const Vector &position)=0 |
Set the anchor position at a given index. More... | |
virtual const Vector & | GetBodyPosition (UInt32 index) const =0 |
Get the anchor position at a given index. More... | |
virtual Bool | SetBodyInfluence (UInt32 index, Bool enabled)=0 |
Enable/disable the joint's influence on an attached body. More... | |
virtual Bool | GetBodyInfluence (UInt32 index) const =0 |
Check if the joint is influencing an attached body. More... | |
virtual Bool | SetSpringConstant (Real springConstant)=0 |
Set the joint's spring constant. More... | |
virtual Real | GetSpringConstant () const =0 |
Get the joint's spring constant. More... | |
virtual Bool | SetDampingConstant (Real dampingConstant)=0 |
Set the joint's damping constant. More... | |
virtual Real | GetDampingConstant () const =0 |
Get the joint's damping constant. More... | |
|
pure virtual |
Get the mutable Graph::INode interface.
This method returns a mutable pointer to the node's Graph::INode interface, to be able to query or modify common node properties such as active state, visibility or ID.
|
pure virtual |
Get the constant Graph::INode interface.
This method returns a constant pointer to the node's Graph::INode interface, to be able to query common node properties such as active state, visibility or ID.
|
pure virtual |
Get the mutable Graph::ITransform interface.
This method returns a mutable pointer to the node's Graph::ITransform interface, to be able to query or modify the node's transformation matrix and depth order.
|
pure virtual |
Get the constant Graph::ITransform interface.
This method returns a constant pointer to the node's Graph::ITransform interface, to be able to query the node's transformation matrix and depth order.
|
pure virtual |
Get the mutable Graph::IBodyNodeTarget container.
This method returns a mutable pointer to the node's Graph::IBodyNodeTarget container, which allows to set or query the bodies to be connected.
|
pure virtual |
Get the constant Graph::IBodyNodeTarget container.
This method returns a constant pointer to the node's Graph::IBodyNodeTarget container, which allows to query the connected bodies.
|
pure virtual |
Set the anchor position at a given index.
If a body is present at the given index (in the range from 0 to 1), the given position represents the anchor position relative to that body's local coordinate system. If no body is present, the position is interpreted relative to the joint itself, which can be set using the joint's ITransformable interface obtained from GetTransformInterface().
index | The anchor index, either 0 or 1. |
position | The anchor position. |
Get the anchor position at a given index.
See SetBodyPosition().
index | The anchor index, either 0 or 1. |
Enable/disable the joint's influence on an attached body.
index | The body index, either 0 or 1. |
enabled | If true, the attached body gets influenced by the joint. |
Check if the joint is influencing an attached body.
index | The body index, either 0 or 1. |
Set the joint's spring constant.
springConstant | The spring constant. |
|
pure virtual |
Get the joint's spring constant.
Set the joint's damping constant.
dampingConstant | The damping constant. |
|
pure virtual |
Get the joint's damping constant.