class nape.constraint.AngleJoint extends Constraint

Available on all platforms

AngleJoint constraining the relative angles of two Bodies. *

* The equation for this constraint is: *

 * jointMin <= ratio * body2.rotation - body1.rotation <= jointMax
 * 

Instance Fields

var body1:Null<Body>

First Body in constraint. *

* This value may be null, but trying to simulate the constraint whilst * this body is null will result in an error.

var body2:Null<Body>

Second Body in constraint. *

* This value may be null, but trying to simulate the constraint whilst * this body is null will result in an error.

var jointMax:Float

Upper bound for constraint. *

* This value must be greater than or equal to jointMin. * * @default infinity

var jointMin:Float

Lower bound for constraint. *

* This value must be less than or equal to jointMax. * * @default -infinity

var ratio:Float

Ratio property of constraint. * * @default 1

function new(body1:Null<Body>, body2:Null<Body>, jointMin:Float, jointMax:Float, ?ratio:Float = 1.0f):Void

Construct a new AngleJoint. * *

body1

The first body in AngleJoint. *

body2

The second body in AngleJoint. *

jointMin

The lower bound for constraint. *

jointMax

The upper bound for constraint. *

ratio

The ratio of joint (default 1) *

returns

The constructed AngleJoint.

function bodyImpulse(body:Body):Vec3

@inheritDoc *

* For this constraint, only the z coordinate will be non-zero.

function impulse():MatMN

@inheritDoc *

* For this constraint, the MatMN will be 1x1.

function isSlack():Bool

Determine if constraint is slack. *

* This constraint is slack if the positional error is within * the bounds of (jointMin, jointMax). * *

returns

True if positional error of constraint is between the limits indicating that the constraint is not doing any work.

function visitBodies(lambda:Body ->Void):Void

@inheritDoc