Weld joint. More...

#include <WeldJoint.hpp>

Public Member Functions

 WeldJoint (const WeldJointConf &def)
 Initializing constructor. More...
 
void Accept (JointVisitor &visitor) const override
 Accepts a visitor. More...
 
void Accept (JointVisitor &visitor) override
 Accepts a visitor. More...
 
Length2 GetAnchorA () const override
 Get the anchor point on body-A in world coordinates. More...
 
Length2 GetAnchorB () const override
 Get the anchor point on body-B in world coordinates. More...
 
Momentum2 GetLinearReaction () const override
 Get the linear reaction on body-B at the joint anchor. More...
 
AngularMomentum GetAngularReaction () const override
 Get the angular reaction on body-B. More...
 
Length2 GetLocalAnchorA () const
 The local anchor point relative to body A's origin. More...
 
Length2 GetLocalAnchorB () const
 The local anchor point relative to body B's origin. More...
 
Angle GetReferenceAngle () const
 Get the reference angle. More...
 
void SetFrequency (Frequency frequency)
 Sets frequency. More...
 
Frequency GetFrequency () const
 Gets the frequency. More...
 
void SetDampingRatio (Real ratio)
 Sets damping ratio. More...
 
Real GetDampingRatio () const
 Gets damping ratio. More...
 
- Public Member Functions inherited from playrho::d2::Joint
virtual ~Joint () noexcept=default
 
BodyGetBodyA () const noexcept
 Gets the first body attached to this joint. More...
 
BodyGetBodyB () const noexcept
 Gets the second body attached to this joint. More...
 
void * GetUserData () const noexcept
 Get the user data pointer. More...
 
void SetUserData (void *data) noexcept
 Set the user data pointer. More...
 
bool GetCollideConnected () const noexcept
 Gets collide connected. More...
 
virtual bool ShiftOrigin (const Length2)
 Shifts the origin for any points stored in world coordinates. More...
 

Related Functions

(Note that these are not member functions.)

WeldJointConf GetWeldJointConf (const WeldJoint &joint) noexcept
 Gets the definition data for the given joint. More...
 

Additional Inherited Members

- Public Types inherited from playrho::d2::Joint
enum  LimitState { e_inactiveLimit, e_atLowerLimit, e_atUpperLimit, e_equalLimits }
 Limit state. More...
 
- Static Public Member Functions inherited from playrho::d2::Joint
static bool IsOkay (const JointConf &def) noexcept
 Is the given definition okay. More...
 
- Protected Member Functions inherited from playrho::d2::Joint
 Joint (const JointConf &def)
 Initializing constructor. More...
 

Detailed Description

Weld joint.

A weld joint essentially glues two bodies together. A weld joint may distort somewhat because the island constraint solver is approximate.

Definition at line 38 of file WeldJoint.hpp.

Constructor & Destructor Documentation

◆ WeldJoint()

playrho::d2::WeldJoint::WeldJoint ( const WeldJointConf def)

Initializing constructor.

Attention
To create or use the joint within a world instance, call that world instance's create joint method instead of calling this constructor directly.
See also
World::CreateJoint

Definition at line 88 of file WeldJoint.cpp.

Member Function Documentation

◆ Accept() [1/2]

void playrho::d2::WeldJoint::Accept ( JointVisitor visitor) const
overridevirtual

Accepts a visitor.

This is the Accept method definition of a "visitor design pattern" for for doing joint subclass specific types of processing for a constant joint.

See also
JointVisitor
https://en.wikipedia.org/wiki/Visitor_pattern

Implements playrho::d2::Joint.

Definition at line 99 of file WeldJoint.cpp.

◆ Accept() [2/2]

void playrho::d2::WeldJoint::Accept ( JointVisitor visitor)
overridevirtual

Accepts a visitor.

This is the Accept method definition of a "visitor design pattern" for for doing joint subclass specific types of processing.

See also
JointVisitor
https://en.wikipedia.org/wiki/Visitor_pattern

Implements playrho::d2::Joint.

Definition at line 104 of file WeldJoint.cpp.

◆ GetAnchorA()

Length2 playrho::d2::WeldJoint::GetAnchorA ( ) const
overridevirtual

Get the anchor point on body-A in world coordinates.

Implements playrho::d2::Joint.

Definition at line 355 of file WeldJoint.cpp.

◆ GetAnchorB()

Length2 playrho::d2::WeldJoint::GetAnchorB ( ) const
overridevirtual

Get the anchor point on body-B in world coordinates.

Implements playrho::d2::Joint.

Definition at line 360 of file WeldJoint.cpp.

◆ GetLinearReaction()

Momentum2 playrho::d2::WeldJoint::GetLinearReaction ( ) const
overridevirtual

Get the linear reaction on body-B at the joint anchor.

Implements playrho::d2::Joint.

Definition at line 365 of file WeldJoint.cpp.

◆ GetAngularReaction()

AngularMomentum playrho::d2::WeldJoint::GetAngularReaction ( ) const
overridevirtual

Get the angular reaction on body-B.

Implements playrho::d2::Joint.

Definition at line 370 of file WeldJoint.cpp.

◆ GetLocalAnchorA()

Length2 playrho::d2::WeldJoint::GetLocalAnchorA ( ) const
inline

The local anchor point relative to body A's origin.

Definition at line 58 of file WeldJoint.hpp.

◆ GetLocalAnchorB()

Length2 playrho::d2::WeldJoint::GetLocalAnchorB ( ) const
inline

The local anchor point relative to body B's origin.

Definition at line 61 of file WeldJoint.hpp.

◆ GetReferenceAngle()

Angle playrho::d2::WeldJoint::GetReferenceAngle ( ) const
inline

Get the reference angle.

Definition at line 64 of file WeldJoint.hpp.

◆ SetFrequency()

void playrho::d2::WeldJoint::SetFrequency ( Frequency  frequency)
inline

Sets frequency.

Definition at line 67 of file WeldJoint.hpp.

◆ GetFrequency()

Frequency playrho::d2::WeldJoint::GetFrequency ( ) const
inline

Gets the frequency.

Definition at line 70 of file WeldJoint.hpp.

◆ SetDampingRatio()

void playrho::d2::WeldJoint::SetDampingRatio ( Real  ratio)
inline

Sets damping ratio.

Definition at line 73 of file WeldJoint.hpp.

◆ GetDampingRatio()

Real playrho::d2::WeldJoint::GetDampingRatio ( ) const
inline

Gets damping ratio.

Definition at line 76 of file WeldJoint.hpp.

Friends And Related Function Documentation

◆ GetWeldJointConf()

WeldJointConf GetWeldJointConf ( const WeldJoint joint)
related

Gets the definition data for the given joint.

Definition at line 38 of file WeldJointConf.cpp.


The documentation for this class was generated from the following files: