178 class HingeImplementation *m_implementation;
#define AGX_DECLARE_POINTER_TYPES(type)
#define AGXSTREAM_DECLARE_SERIALIZABLE(T)
Use this in a Serializable class to add the required methods Important: Use full namespace in the dec...
#define AGXPHYSICS_EXPORT
Class for managing the rendering of geometries, shapes, rigid bodies, constraints etc.
Specialization for constraints that have only one degree of freedom such as Hinge and Prismatic.
The object defining a frame of reference and providing transformations operations.
Specialization for the constraint frame class that add convenient accessors/mutator methods for manip...
const Vec3 & getAxis() const
Get the hinge axis.
void setHinge(const Vec3 ¢er, const Vec3 &axis)
Sets all parameters needed to create a hinge.
HingeFrame(const Vec3 ¢er, const Vec3 &axis)
void setCenter(const Vec3 ¢er)
Sets the center of the hinge in world coordinates.
void setAxis(const Vec3 &axis)
Sets the axis of the hinge in world coordinates.
HingeFrame()
Default constructor: rotational axis is along Z.
The hinge constraint between two rigid bodies or one rigid body and the world.
int getNumDOF() const override
Hinge()
Default constructor.
Hinge(RigidBody *rb1, Frame *rb1AttachmentFrame, RigidBody *rb2=nullptr, Frame *rb2AttachmentFrame=nullptr)
Create hinge given attachment frames and one or two rigid bodies.
bool addRigidBody(RigidBody *rb, Frame *rbAttachmentFrame)
Create hinge given attachment frame and one body at the time.
virtual void render(class agxRender::RenderManager *mgr, float scale) const override
Used internally for debug rendering.
Hinge(const HingeFrame &hf, RigidBody *rb1, RigidBody *rb2=0)
Create hinge given a hinge frame (world coordinates) and one or two rigid bodies.
DOF
Enum used for specifying which Degree of Freedom (DOF) that should be accessed in calls to for exampl...
The rigid body class, combining a geometric model and a frame of reference.
The agx namespace contains the dynamics/math part of the AGX Dynamics API.