MAXScript Extensions > MAXScript Extensions for Reactor >

# reactor_Cloth : Modifier

    reactor_Cloth - superclass: Modifier; super-superclass:MAXWrapper - classID: #(929247493, 1302554794)

The Reactor dynamics system has been retired and REMOVED from 3ds Max 2012.

Value > MAXWrapper > Modifier > reactor_Cloth

Description:

The Cloth Modifier lets you to turn any 2d geometry into a deformable mesh, allowing you to simulate the behavior of objects such as curtains, clothes, metal sheets, and flags. You can specify a number of special properties for your cloth objects, including stiffness and how the object folds.

Constructor:

    reactor_Cloth...

Properties:

    .adm_defMesh (Deformable_Mesh) : node

Get/Set the Deformable Mesh node.

    .adm_ignoreCollisions (Ignore_Collisions) : boolean

When set to true, Deformable Mesh collisions will not be calculated.

    .arb_rigidBody (Rigid_Body) : node

Get/Set the Rigid Body node.

    .arb_doNotAffectRigidBody (Do_Not_Affect_RigidBody) : boolean

When set to true, the Rigid Body will not be calculated.

    .arb_ignoreCollisions (Ignore_Collisions) : boolean

When set to true, Rigid Body collisions will not be calculated.

    .kf_useStoredKeyframes (Use_Stored_Keyframes) : boolean

When set to true, stored keyframes will be used.

    .mass : float

Get/Set the Mass value.

    .simpleStiffness (Stiffness) : float

The stiffness of the cloth used by the Simple Force Model.

    .friction : float

Get/Set the coefficient of friction for the cloth's surface. As with rigid bodies, this affects how smoothly the cloth will move relative to surfaces it’s in contact with. The friction values for both objects are combined to produce a coefficient for the interaction

    .avoidSelfIntersections (Avoid_Self_Intersections) : boolean

When set to true , the cloth will not appear to intersect with itself during the simulation. This results in a more realistic-looking simulation, but may increase simulation time.

    .useCurrentState (Use_Current_State) : boolean

When set to true , the cloth object will start the simulation in its current state in the viewport.

    .constrainDeformation (Constrain_Deformation) : boolean

When set to true , limits how much the cloth can stretch.

    .maxDeformation (Max_Deformation) : float

Get/Set the max. deformation percentage value which indicates how stretchy the cloth is - cloth with a low value will hardly stretch at all

    .simpleDamping (Damping) : float

Get/Set the damping value which governs how quickly the cloth dissipates energy as it changes shape.

Note

A value specified here will not have the same effect as the same damping value using the complex force model.

    .relativeDensity (Relative_Density) : float

Get/Set the relative density value.

    .airResistance (Air_Resistance) : float

Get/Set the air resistance value which governs the extent to which the cloth will lose energy as it moves.

    .forceModel (Force_Model) : integer

Get/Set the Force Model. Possible values are

0 - Simple Force Model

1 - Complex Force Model

    .complexStretch (Stretch) : float

This value governs how easy it is to stretch the cloth when using the Complex Force Method.

    .complexBend (Bend) : float

This value governs how easy it is to bend the cloth when using the Complex Force Method.

    .complexShear (Shear) : float

This value governs how easy it is to exert a shear effect on the cloth when using the Complex Force Method.

    .complexDamping (Damping) : float

This governs how quickly the cloth dissipates energy as it changes shape when using the Complex Force Method.

    .foldStiffnessModel : integer

Fold stiffness governs how easily the cloth folds. By default, cloth objects have no fold stiffness, and will behave like a loose material such as silk.

0 - None (default)

1 - Uniform Model

2 - Spatial Model

    .simpleFoldStiffness (Fold_Stiffness) : float

The fold stiffness used by the Uniform Model.

    .complexFoldStiffness (Fold_Stiffness) : float

The fold stiffness used by the Spatial Model.

    .foldStiffnessDistance (Distance) : float

Get/Set the degree of fold stiffness per unit area. A Distance value of 2 refers to twice the average triangle edge length in the cloth - so a large Distance value results in a large concentration of fold stiffness per unit area.

    .foldStifnessSpreadAngle (Spread_Angle) : float

Get/Set the degree to which fold stiffness is added to cloth when it has a non-flat shape. The angle relates to the threshold angle between two parts of the cloth, below which stiffness is added. If this value is zero, fold stiffness will only be added to flat parts of the cloth.

    .foldStifnessSplitAngle (Split_Angle) : float

Get/Set the degree to which fold stiffness is added, specifically how fold stiffness is concentrated along the grid lines of the cloth's original mesh.

    .useSoftSelection (Use_Soft_Selection) : boolean

When set to true, the Soft Selection will be used to smooth the transition between keyframed and simulated vertices for this deformable object.

### Interfaces:

    Interface:rctClothInterface

Properties:

    .currentVertexSelection: bitArray by value : Read|Write

Get/Set the current vertex selection as bitArray.

    .currentConstraintIndex: integer : Read|Write

Get/Set the index of the current constraint in the list.

    .currentConstraintName: string : Read|Write

Get/Set the name of the current constraint in the list.

Methods:

    <string>currentConstraintDescription()

Returns the description of the current Constraint as string.

    <integer>addAttachToRigidBodyConstraint()

Corresponds to pressing the "Attach To Rigid Body" button in the UI. Returns the list index of the new constraint.

    <integer>addAttachToDefMeshConstraint()

Corresponds to pressing the "Attach To DefMesh" button in the UI. Returns the list index of the new constraint.

    <integer>addFixVerticesConstraint()

Corresponds to pressing the "Fix Vertices" button in the UI. Returns the list index of the new constraint.

    <integer>addKeyframeVerticesConstraint()

Corresponds to pressing the "Keyframe Vertices" button in the UI. Returns the list index of the new constraint.

    <boolean>deleteConstraint()

Corresponds to pressing the "Delete Constraint" button in the UI. Returns true on success.

    <integer>getNumStoredKeyframes()

Returns the number of stored keyframes.

    <void>clearStoredKeyframes()

Removes the stored keyframes.

#### See Also

- CLCollection : Helper

- MAXScript Extensions forReactor