NAME
Box2D::b2RevoluteJointDef - Revolute joint definition.
SYNOPSIS
my $joint_def = Box2D::b2RevoluteJointDef->new();
$joint_def->Initialize( $body_a, $body_b, $anchor );
my $joint = $world->CreateJoint( $joint_def );
DESCRIPTION
Revolute joint definition. This requires defining an anchor point where the bodies are joined. The definition uses local anchor points so that the initial configuration can violate the constraint slightly. You also need to specify the initial relative angle for joint limits. This helps when saving and loading a game. The local anchor points are measured from the body's origin rather than the center of mass because:
you might not know where the center of mass will be.
if you add/remove shapes from a body and recompute the mass, the joints will be broken.
METHODS
new()
Default constructor.
Returns a Box2D::b2RevoluteJointDef
Initialize( $bodyA, $bodyB, $anchor )
Initialize the bodies, anchors, and reference angle using a world anchor point.
Parameters:
Box2D::b2Body
$bodyA
Box2D::b2Body
$bodyB
Box2D::b2Vec2
$anchor
enableLimit()
enableLimit( $enableLimit )
A flag to enable joint limits.
Parameters:
bool
$enableLimit
(optional)
Returns a bool
enableMotor()
enableMotor( $enableMotor )
A flag to enable the joint motor.
Parameters:
bool
$enableMotor
(optional)
Returns a bool
localAnchorA()
localAnchorA( $localAnchorA )
The local anchor point relative to body1's origin.
Parameters:
Box2D::b2Vec2
$localAnchorA
(optional)
Returns a Box2D::b2Vec2
localAnchorB()
localAnchorB( $localAnchorB )
The local anchor point relative to body2's origin.
Parameters:
Box2D::b2Vec2
$localAnchorB
(optional)
Returns a Box2D::b2Vec2
lowerAngle()
lowerAngle( $lowerAngle )
The lower angle for the joint limit (radians).
Parameters:
float32
$lowerAngle
(optional)
Returns a float32
maxMotorTorque()
maxMotorTorque( $maxMotorTorque )
The maximum motor torque used to achieve the desired motor speed. Usually in N-m.
Parameters:
float32
$maxMotorTorque
(optional)
Returns a float32
motorSpeed()
motorSpeed( $motorSpeed )
The desired motor speed. Usually in radians per second.
Parameters:
float32
$motorSpeed
(optional)
Returns a float32
referenceAngle()
referenceAngle( $referenceAngle )
The body2 angle minus body1 angle in the reference state (radians).
Parameters:
float32
$referenceAngle
(optional)
Returns a float32
upperAngle()
upperAngle( $upperAngle )
The upper angle for the joint limit (radians).
Parameters:
float32
$upperAngle
(optional)
Returns a float32
SEE ALSO
BUGS
See "BUGS" in Box2D