linkChain Settings
Author: Asaf Ben-Zur
Best used for: Tank-Treads, Bike-Chains, Ferris-Wheel, Tire, Conveyor-Belt
This is a comprehensive module, to create a link-chain style behaviour.
Originally created for tank-treads, but can be used for a range of components.
On creation, based on the number on the numberOfLinks setting, joints will be created on a circle Nurbs curve with shapeSections setting amount.
After creation, the shape can be tweaked to fit any need.
IMPORTANT NOTE: This module requires a joint-struct-rebuild once the Nurbs shape has been tweaked.
Once the joint-struct is revuilt, the joints will be layed out uniformally along the given shape.
Upon construction, a main control will be created for controlling the entire position of the module.
Under, a chain-driver control will be created. Rotating it will drive the joint chain along the curve in both forwards and backwards directions.
Also, use the shape-tweak layer to create a tweak feature for the shape on construction. This will allow manipulation of the shape dynamically while the chain is driven.
Automatic drive based on position is also possible wihin this module using the AutoDrive layer.
Attributes
GlobalSettings
Attribute Name | Default | Description | ||||||||||||||||
numberOfLinks | 16 | Amount of links in the chain. A joint will be created for every link | ||||||||||||||||
reverseOffsetDirection | False | In case the the rotation post construction is reversed, set this attribute to ON | ||||||||||||||||
upCurveOffset | 5.0 | The offset value to generate the up curve, based on a center matrix- the modules root joint | ||||||||||||||||
controlShape | circle | Control shape | ||||||||||||||||
slaveControlShape | dodecagon | Slave control shape | ||||||||||||||||
wheelDiameter | 20.0 | The diameter of your wheel. This is very important to set correctly as the diameter of the wheel is one of the source attributes for the wheels rotation calculation | ||||||||||||||||
mapRoatationToAxis | 0 | Map the rotation action you need to be acted on. This is based on the orientation of your guide | ||||||||||||||||
rotationMode | 0 | In case your chain links are connected to one another- it is recommended to use lookAtNext. In case there isn't a connection between your links, curveTangent might be a better choice | ||||||||||||||||
slaveChannelControl |
|
Slave control channel-box settings |
ShapeTweak
Attribute Name | Default | Description |
doShapeTweakers | False | If this setting in set to True, the shape-tweak feature will be created. In case you want to tweak the shape of the closed-shaped link chain curve in animation, turn this feature on |
shapeTweakers | [' '] | Input guides/joints- In order. A closed nurbs-curve shape will be constructed from the inputs and will be used as a tweak to deform the main shape driving the chain. These MUST be Mansur-Rig objects, and a part of the same Block rig. |
tweakMethod | 1 | This attribute will determine the shape tweak method. In Direct-Skin mode, the link chain shape will be directly skinned to all input tweakers. In Build-Transforms-Curve mode a new curve will be constructed based on the curve mode selected and input tweakers, which will be used to deform the master shape indirectly. This mode will allow for a better control over the deformation, as it is based on curve re-generation instead of direct curve deformation. Build transforms curve mode will generate a new closed shape curve based on the input tweak transforms, hence it is order sensative. In case you wish to use this mode, make sure you input the tweakers in order which makes sense to generate a closed curve shape. Rebuild-Then-Skin mode will first rebuild the curve based on the input re-build number of spans attribute, then skin the curve and deform the master curve indirectly |
rebuildNumOfSpans | 16 | relevant only on rebuildThenSkin tweak method. This attribute dectates the amount of sections to rebuild the curve to before skinning |
tweakCurveInterpolaion | 1 | relevant only on mnsBuildTransformsCurve tweak method |
tweakCurveDegree | 3 | relevant only on mnsBuildTransformsCurve, and rebuild then skin tweak methods |
AutoDrive
Attribute Name | Default | Description |
doAutoDrive | False | This feature will create an auto-drive mechanism, that will automatically drive the chain when it moves in space |
autoDriveWheelDiameter | 20.0 | The diameter of the driver wheel, whether it exists or not. This diameter is derived from the main gear driving this link-chain. This diameter will be used to calculate the drive of the chain |
gearRatio | 1.0 | In case your main driver is derived from another gear, you can set its ratio here to get accurate results |
reverseDirection | False | In some cases the direction of the drive is flipped. If this is your case, set this setting to True to correct this issue |
autoDriveDefault | 1.0 | Auto-Drive channel default state |