# Gear

Model ElementGear defines a gear constraint between two bodies.

Gear

## Description

The gear is modeled as an algebraic relationship between input and output displacements between two joints. The inputs and outputs may be either rotational or translational. This allows spur, helical, bevel, and rack-and-pinion gear sets to be modeled. Friction, backlash, and manufacturing inaccuracies in tooth profiles are not modeled.

## Attribute Summary

Name Property Modifiable by command? Designable?
id Int ()
label Str () Yes
joints Reference ("Joint", count=2) Yes
cv Reference ("Marker") Yes Yes
active Bool () Yes
virtual Bool () Yes

## Usage

Gear (joints=[objJoint1, objJoint2], cv=objMarker, optional_attributes):

## Attributes

joints
List containing two JOINT objects.
Specifies two joints whose output is coupled by the gear constraint. Only the following types of joints may be used in defining a GEAR object:
• Revolute
• Translational
• Cylindrical
The joints attribute is mandatory.
cv
Reference to an existing Marker.
Specifies the marker whose origin defines the contact point. Its z-axis defines the direction of motion at the contact point. cv must belong to the body containing the housing.
The cv attribute is mandatory.
id
Integer
Specifies the element identification number. This number must be unique among all the Marker objects in the model.
This attribute is optional. MotionSolve will automatically create an ID when one is not specified.
Range of values: id > 0
label
String
Specifies the name of the Gear object.
This attribute is optional. When not specified, MotionSolve will create a label for you.
active
Bool
Select one from True or False.
• True indicates that the element is active in the model and it affects the behavior of the system
• False indicates that the element is inactive in the model and it does not affect the behavior of the system. It is almost as if the entity was removed from the model, of course with the exception that can be turned "ON" when desirable.
The attribute active is optional. When not specified, active defaults to True.
virtual
Boolean
Defines whether the constraint is virtual or regular. Select "TRUE" or "FALSE".
• TRUE” indicates that the constraint is implemented as a virtual constraint.
• FALSE” indicates that the constraint is implemented as a regular algebraic constraint.

Optional. When not specified, virtual defaults to “FALSE”. For a more detailed explanation about virtual, see Constraint: Joint.

## Example

1. Define a GEAR with the minimum number of attributes.
gear = Gear (joints=[joint1, joint22], cv=marker1101)
2. Define a GEAR and specify all of its attributes.
gear1101 = Gear (id=1101, label="Gear-1101", joints=[joint1, joint22], cv=marker1101)