UnigineScript
The Language
Core Library
Engine Library
Node-Related Classes
GUI-Related Classes
Plugins Library
High-Level Systems
Samples
C++ API
API Reference
Integration Samples
Usage Examples
C++ Plugins
Content Creation
Materials
Unigine Material Library
Tutorials

JointBall Class

This class is used to create ball joints.

JointBall Class

This class inherits from Joint

Members


JointBall ()

Constructor. Creates a ball joint with an anchor at the origin of the world coordinates.

JointBall (Body body0, Body body1)

Constructor. Creates a ball joint connecting two given bodies. An anchor is placed between centers of mass of the bodies.

Arguments

  • Body body0 - The first body to connect with the joint.
  • Body body1 - The second body to connect with the joint.

JointBall (Body body0, Body body1, vec3 anchor)

Constructor. Creates a joint connecting two given bodies using a given anchor.

Arguments

  • Body body0 - The first body to connect with the joint.
  • Body body1 - The second body to connect with the joint.
  • vec3 anchor - Anchor of the joint.

JointBall (Body body0, Body body1, vec3 anchor, vec3 axis)

Constructor. Creates a joint connecting two given bodies using a given anchor and an axis.

Arguments

  • Body body0 - The first body to connect with the joint.
  • Body body1 - The second body to connect with the joint.
  • vec3 anchor - Anchor of the joint.
  • vec3 axis - Axis of the joint.

float getAngularDamping ()

Returns the angular damping of the joint. The default is 0.

Return value

Angular damping.

float getAngularLimitAngle ()

Returns the swing limit angle. Swing limit specifies how much connected bodies can bend from the joint axis. The default is 0, which means that no limit exists.

Return value

Swing limit angle in degrees.

float getAngularLimitFrom ()

Returns the low twist limit angle. Twist limit specifies how much a connected body can twist around the joint axis. The default is -180 degrees.

Return value

Low twist limit angle in degrees.

float getAngularLimitTo ()

Returns the high twist limit angle. Twist limit specifies how much a connected body can twist around the joint axis. The default is 180 degrees.

Return value

High twist limit angle in degrees.

vec3 getAxis0 ()

Returns the axis of the first connected body.

Return value

Axis of the first body.

vec3 getAxis1 ()

Returns the axis of the second connected body.

Return value

Axis of the second body.

vec3 getWorldAxis ()

Returns the joint axis. The joint axis is calculated based on the axes of the connected bodies.

Return value

Joint axis.

void setAngularDamping (float damping)

Sets an angular damping of the joint.

Arguments

  • float damping - Angular damping. If a negative value is provided, 0 will be used instead.

void setAngularLimitAngle (float angle)

Sets a swing limit angle. Swing limit specifies how much connected bodies can bend from the joint axis.

Arguments

  • float angle - Angle in degrees. The provided value will be saturated in the range [0; 180]. 0 means no limit.

void setAngularLimitFrom (float angle)

Sets a low twist limit angle. Twist limit specifies how much a connected body can twist around the joint axis.

Arguments

  • float angle - Angle in degrees. The provided value will be saturated in the range [-180; 180].

void setAngularLimitTo (float angle)

Sets a high twist limit angle. Twist limit specifies how much a connected body can twist around the joint axis.

Arguments

  • float angle - Angle in degrees. The provided value will be saturated in the range [-180; 180].

void setAxis0 (vec3 axis)

Sets an axis of the first connected body.

Arguments

  • vec3 axis - Axis of the first body. The provided vector will be normalized.

void setAxis1 (vec3 axis)

Sets an axis of the second connected body.

Arguments

  • vec3 axis - Axis of the second body. The provided vector will be normalized.

void setWorldAxis (vec3 axis)

Sets a joint axis. This method updates axes of the connected bodies.

Arguments

  • vec3 axis - Joint axis.
Last update: 2017-07-03