Hinge Constraint
 
 
 
Bottom of the Page

Create panel (Helpers) reactor Hinge

Animation menu reactor Create Object Hinge Constraint

reactor toolbar (Create Hinge Constraint)

The Hinge constraint allows you to simulate a hinge-like action between two bodies. reactor lets you specify an axis in local space for each body, with a position and a direction. During the simulation, the two axes attempt to match position and direction, thereby creating an axis around which the two bodies can rotate. Alternatively, you can hinge a single body to an axis in world space.

You can also limit the rotation between the attached objects relative to the hinge axis, allowing you, for instance, to create a door that can open only to a specified extent. You define this limitation with respect to an axis perpendicular to the hinge axis for each body.

A Hinge constraint is simulated only if it has the correct number of rigid bodies attached and is included in a valid Constraint Solver. When not selected, an invalid Hinge is red in the viewport.

Procedures

To create a Hinge constraint:

To attach objects to the Hinge:

  1. Create the Hinge and the objects to connect using it.
  2. On the Hinge's Properties rollout, click the Child pick button, and then select the object to use as the child object in one of the viewports. By default, this attaches the constraint so that its axis goes through the child body pivot point and the axes are aligned with the child body's local space. The constraint axis is aligned with the child's Z axis, and the perpendicular axis used for rotation limits is aligned to the child’s X axis.
  3. If you do not want to assign a second body to the Hinge, turn off the Parent check box if necessary.
  4. If the Hinge is to be two-bodied, repeat step 2, using the Parent pick button to set Parent for the Hinge.

To create a Hinge and attach objects in a single step:

To change the Hinge positions and rotations for the bodies:

  1. With the Hinge helper object selected, open the Modify panel.
  2. In the modifier stack, open the sub-object list for the Hinge.
  3. Access the sub-object level corresponding to the object whose hinge axes you want to move: Child Space or Parent Space. If the Hinge is single-bodied, Parent Space represents the world attachment position and rotation of the axes.
  4. The space, represented by a pair of axes, the larger of which represents the hinge axis, the smaller of which is used to specify limits, becomes active in the viewport. It can be moved and rotated using the Move and Rotate tool respectively. The space maintains its position and rotation relative to its corresponding object. For example, if you move or rotate the child body, the Child Space moves with it.

  5. To reset the axes to their default alignment, reattach the objects to the Hinge or click the Align Spaces To Child Body button.

To limit the rotation between the attached objects:

  1. With the Hinge selected, open the Properties rollout.
  2. Turn on the Limited check box.

    The Hinge limits display around the Parent Space axis.

    The default angle limits are –90.0 and 90.0. This means that in a situation where the sub-objects are fully aligned for the objects, the objects will be able to rotate 90 degrees in either direction about the shared hinge axis.

    The child object is free to rotate within the indicated limits relative to the parent during the simulation.

  3. Change the minimum and maximum rotations the constraint maintains between the objects by adjusting the Min Angle and Max Angle values.

    The limit display updates to reflect your changes, to help you choose appropriate values. Upon simulation you can see that the rotation between the objects has been limited.

Interface

Modifier Stack

Parent Space

At this sub-object level, you can move and rotate the representation of the Hinge for the parent body. The Hinge axes are defined in the parent body's space, which means that if you alter the position or rotation of the parent, the space moves as well and maintains its offset rotation and translation with respect to the parent. When you assign a parent body to the Hinge, Parent Space is also aligned with the child body's local space, with the Hinge axis going through the child body's pivot point. If the Hinge is single-bodied, then Parent Space represents the world orientation and position of the Hinge.

Child Space

At this sub-object level, you can move and rotate the representation of the Hinge for the child body. The Hinge axes are defined in the child body's space, which means that if you alter the position or rotation of the child, the space moves as well and maintains its offset rotation and translation with respect to the child. When you assign a child body to the Hinge, the Child Space hinge axis is positioned so that it goes through the child body pivot point, and the axes are aligned with the child body's local space: The Hinge axis is aligned with the child's Z axis, and the perpendicular axis used for rotation limits is aligned to the child’s X axis.

Properties rollout

Parent

When on, the Hinge has two bodies and you can designate an object to be the parent body. When off, the Hinge is single-bodied and the point occupied by the Parent Space sub-object is the parent.

You assign the parent object by clicking this button and then selecting a rigid body from any viewport. Thereafter the button displays the name of the parent body.

Child

Displays the name of the second rigid body attached to the Hinge. You assign the child object by clicking this button and then selecting a rigid body from any viewport.

Align Spaces To

Use these options to align the bodies' local constraint spaces. You can find out more about each option in Working With Constraint Spaces.

Lock Relative Transform

When on, the relative transform between the child and parent constraint spaces is locked: If you move either space in the viewport, the other space moves and rotates along with it, and vice-versa.

Strength group

Strength/Tau

Govern the impulses applied to the constraint's bodies in order to maintain the constraint, and so how strongly the constraint works to restrict their movement. You can find out more about these parameters in Strength and Tau.

Limited group

Limited

When on, limits the rotation about the hinge axis between the attached objects. When this value is true, the child object will only be free to rotate relative to the parent within the range specified by the Min Angle and Max Angle values. You can also specify a friction value for a limited Hinge.

Min Angle

The minimum rotation the constraint allows between the two hinge spaces. For example, if Min Angle is –5.0 then the child body cannot rotate more than 5 degrees counter clockwise about the hinge axis relative to the parent body.

Max Angle

The maximum rotation the constraint allows between the two hinge spaces. For example, if Max Angle is 5.0 then the child body cannot rotate more than 5 degrees clockwise about the hinge axis relative to the parent body.

Friction

The level of friction applied to the objects as they try to rotate about the hinge axis. It is only applied to limited Hinges.

Breakable group

Breakable

When on, the constraint is breakable. If its breakable limits are exceeded during simulation, it ceases to exert impulses on the attached objects. You can find out more about breakable constraints in Breakable Constraints.

Display group

Size

Lets you change the size of the Hinge limit display in the viewport.

Reset Default Values

Returns the Strength, Tau, Min Angle, Max Angle, Friction, Linear, Angular, Threshold, and Display settings to their default values.