Warning! This version of documentation is OUTDATED, as it describes an older SDK version! Please switch to the documentation for the latest SDK version.
Warning! This version of documentation describes an old SDK version which is no longer supported! Please upgrade to the latest SDK version.

# Unigine::JointFixed Class

This class is used to create fixed joints.

### Example

The following code illustrates connection of two bodies (b0 and b1) using a fixed joint.

Source code (C++)
``````include <UniginePhysics.h>

/* .. */

JointFixedPtr joint = JointFixed::create(b0, b1);

// setting common joint constraint parameters
joint->setLinearRestitution(0.8f);
joint->setAngularRestitution(0.8f);
joint->setLinearSoftness(0.0f);
joint->setAngularSoftness(0.0f);

// setting number of iterations
joint->setNumIterations(4);``````

Usage examples:

## static JointFixedPtr create()

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

## static JointFixedPtr create(const Ptr<Body> & body0, const Ptr<Body> & body1)

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

### Arguments

• const Ptr<Body> & body0 - First body to be connected with the joint.
• const Ptr<Body> & body1 - Second body to be connected with the joint.

## static JointFixedPtr create(const Ptr<Body> & body0, const Ptr<Body> & body1, const Math::Vec3 & anchor)

Constructor. Creates a fixed joint connecting two given bodies with an anchor placed at specified coordinates.

### Arguments

• const Ptr<Body> & body0 - First body to be connected with the joint.
• const Ptr<Body> & body1 - Second body to be connected with the joint.
• const Math::Vec3 & anchor - Anchor coordinates.

## Ptr<JointFixed>cast(const Ptr<Joint> & joint)

Casts a JointFixed out of the Joint instance.

### Arguments

• const Ptr<Joint> & joint - Joint instance.

JointFixed.

## voidsetRotation0(const Math::mat3 & rotation0)

Sets a rotation matrix of the anchor point in a system of coordinates of the first connected body.

### Arguments

• const Math::mat3 & rotation0 - Rotation matrix in the body coordinate space.

## voidsetRotation1(const Math::mat3 & rotation1)

Sets a rotation matrix of the anchor point in a system of coordinates of the second connected body.

### Arguments

• const Math::mat3 & rotation1 - Rotation matrix in the body coordinate space.

## voidsetWorldRotation(const Math::mat3 & rotation)

Sets a rotation matrix of the anchor point in the world system of coordinates.

### Arguments

• const Math::mat3 & rotation - Rotation matrix in the world coordinate space.

## Math::mat3getWorldRotation()

Last update: 2018-06-04