Unigine.JointCylindrical Class
Inherits: | Joint |
This class is used to create cylindrical joints.
Example#
The following code illustrates connection of two bodies (b0 and b1) using a cylindrical joint.
JointCylindrical joint = new JointCylindrical(b0, b1);
// setting joint axis coordinates
joint.setWorldAxis(new vec3(0.0f, 0.0f, 1.0f));
// setting common joint constraint parameters
joint.setLinearRestitution(0.4f);
joint.setAngularRestitution(0.4f);
joint.setLinearSoftness(0.4f);
joint.setAngularSoftness(0.4f);
// setting linear and angular damping
joint.setLinearDamping(4.0f);
joint.setAngularDamping(2.0f);
// setting linear limits [-1.5; 1.5]
joint.setLinearLimitFrom(-1.5f);
joint.setLinearLimitTo(1.5f);
// setting number of iterations
joint.setNumIterations(16);
See Also#
Usage examples:
- Creating a Simple Mechanism Using Various Types of Joints.
- A set of UnigineScript API samples located in the <UnigineSDK>/data/samples/joints/ folder:
- cylindrical_00
- cylindrical_01
JointCylindrical Class
Properties
float CurrentLinearVelocity#
The current velocity of the linear motor.
float CurrentLinearDistance#
The current distance between the bodies.
float CurrentAngularVelocity#
The current velocity of the angular motor.
float CurrentAngularAngle#
The current angle between the bodies.
float LinearVelocity#
The target velocity of the attached linear motor.
set
Sets a target velocity of the attached linear motor.
set value -
Target velocity in units per second.
float LinearSpring#
The rigidity coefficient of the linear spring. 0 means that the spring is not attached.
set
Sets a rigidity coefficient of the linear spring.
set value -
Rigidity coefficient. If a negative value is provided, 0 will be used instead. 0 detaches the spring.
float LinearLimitTo#
The high limit distance. this limit specifies how far a connected body can move along the joint axis.
set
Sets a high limit distance. This limit specifies how far a connected body can move along the joint axis.
set value -
Distance in units.
float LinearLimitFrom#
The low limit distance. this limit specifies how far a connected body can move along the joint axis.
set
Sets a low limit distance. This limit specifies how far a connected body can move along the joint axis.
set value -
Distance in units.
float LinearForce#
The maximum force of the attached linear motor. 0 means that the motor is not attached.
set
Sets a maximum force of the attached linear motor.
set value -
Maximum force. If a negative value is provided, 0 will be used instead. 0 detaches the motor.
float LinearDistance#
The target distance of the attached linear spring. the spring tries to move the connected bodies so that to keep this distance between them.
set
Sets a target distance of the attached linear spring. The spring tries to move the connected bodies so that to keep this distance between them.
set value -
Target distance in units.
float LinearDamping#
The linear damping of the joint.
set
Sets a linear damping of the joint.
set value -
Linear damping. If a negative value is provided, 0 will be used instead.
float AngularVelocity#
The target velocity of the attached angular motor.
set
Sets a target velocity of the attached angular motor.
set value -
Velocity in radians per second.
float AngularSpring#
The rigidity coefficient of the angular spring. 0 means that the spring is not attached.
set
Sets a rigidity coefficient of the angular spring.
set value -
Rigidity coefficient. If a negative value is provided, 0 will be used instead. 0 detaches the spring.
float AngularLimitTo#
The high rotation limit angle. rotation limit specifies how much a connected body can rotate around the joint axis
set
Sets a high rotation limit angle. Rotation limit specifies how much a connected body can rotate around the joint axis.
set value -
Angle in degrees. The provided value will be saturated in the range [-180; 180].
float AngularLimitFrom#
The low rotation limit angle. rotation limit specifies how much a connected body can rotate around the joint axis.
set
Sets a low rotation limit angle. Rotation limit specifies how much a connected body can rotate around the joint axis.
set value -
Angle in degrees. The provided value will be saturated in the range [-180; 180].
float AngularTorque#
The maximum torque of the attached angular motor. 0 means that the motor is not attached.
set
Sets a maximum torque of the angular motor.
set value -
Maximum torque. If a negative value is provided, 0 will be used instead. 0 detaches the motor.
float AngularDamping#
The angular damping of the joint.
set
Sets an angular damping of the joint.
set value -
Angular damping. If a negative value is provided, 0 will be used instead.
float AngularAngle#
The target angle of the attached angular spring. the spring tries to rotate the connected bodies so that they make this angle.
set
Sets a target angle of the attached angular spring. The spring tries to rotate the connected bodies so that they make this angle.
set value -
Angle in degrees. The provided value will be saturated in the range [-180; 180].
vec3 WorldAxis#
The joint axis. the joint axis is calculated based on the axes of the connected bodies.
set
Sets a joint axis. This method updates axes of the connected bodies.
set value -
Joint axis.
vec3 Axis1#
The axis of the second connected body.
set
Sets an axis of the second connected body.
set value -
Axis of the second body. The provided vector will be normalized.
vec3 Axis0#
The axis of the first connected body.
set
Sets an axis of the first connected body.
set value -
Axis of the first body. The provided vector will be normalized.
Members
static JointCylindrical ( ) #
Constructor. Creates a cylindrical joint with an anchor at the origin of the world coordinates.static JointCylindrical ( Body body0, Body body1 ) #
Constructor. Creates a cylindrical joint connecting two given bodies. An anchor is placed between centers of mass of the bodies.Arguments
- Body body0 - First body to be connected with the joint.
- Body body1 - Second body to be connected with the joint.
static JointCylindrical ( Body body0, Body body1, vec3 anchor, vec3 axis ) #
Constructor. Creates a cylindrical joint connecting two given bodies with specified axis coordinates and an anchor placed at specified coordinates.Arguments
- Body body0 - First body to be connected with the joint.
- Body body1 - Second body to be connected with the joint.
- vec3 anchor - Anchor coordinates.
- vec3 axis - Axis coordinates.
Last update:
2020-04-10
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)