struct LimitAngularRange

Inherits: LimitCommon

Represents a joint limit between two angles.

Public

Constructors

LimitAngularRange

LimitAngularRange()

Constructs an empty limit.

LimitAngularRange

LimitAngularRange(Radian lower, Radian upper, float contactDist = -1.F)

Constructs a hard limit.

Once the limit is reached the movement of the attached bodies will come to a stop.

lower
Lower angle of the limit. Must be less than .
upper
Upper angle of the limit. Must be more than .
contactDist
Distance from the limit at which it becomes active. Allows the solver to activate earlier than the limit is reached to avoid breaking the limit. Specify -1 for the default.

LimitAngularRange

LimitAngularRange(Radian lower, Radian upper, const Spring &spring, float restitution = 0.F)

Constructs a soft limit.

Once the limit is reached the bodies will bounce back according to the resitution parameter and will be pulled back towards the limit by the provided spring.

lower
Lower angle of the limit. Must be less than .
upper
Upper angle of the limit. Must be more than .
spring
Spring that controls how are the bodies pulled back towards the limit when they breach it.
restitution
Controls how do objects react when the limit is reached, values closer to zero specify non-ellastic collision, while those closer to one specify more ellastic (i.e bouncy) collision. Must be in [0, 1] range.

Fields

Lower

Radian Lower

Lower angle of the limit.

Must be less than #upper.

Upper

Radian Upper

Upper angle of the limit.

Must be less than #lower.

ContactDist

float ContactDist

Distance from the limit at which it becomes active.

Allows the solver to activate earlier than the limit is reached to avoid breaking the limit.

Restitution

float Restitution

Controls how do objects react when the limit is reached, values closer to zero specify non-ellastic collision, while those closer to one specify more ellastic (i.e bouncy) collision.

Must be in [0, 1] range.

Spring

Spring that controls how are the bodies pulled back towards the limit when they breach it.

Operators

operator==

bool operator==(const LimitAngularRange &other) const