Sweep : Modifier

sweep - superclass: modifier; super-superclass:MAXWrapper - 18:0 - classID: #(636209254, 529015311)

The Sweep Modifier can be used to turn a spline shape into a mesh with a custom cross-section, providing both built-in and user-defined cross-section shape options. Available in 3ds Max 8 and higher.

Constructor

Sweep ...

Properties

Section Type Rollout

<sweep>.AssignCSType Integer default: 2 -- radiobtnIndex; AssignCustomSectionType

Get/set the Custom Section Type > mode radio buttons' state.

Possible values are:

0 - Move

1 - Copy

2 - Instance (default)

3 - Reference

<sweep>.CurrentBuiltInShape Integer default: 1 -- integer; Current_Built_In_Shape

Get/set the Build-in Section type. The available shapes are not hard-coded, but can be extended by editing the file \plugcfg\sweep.ini and adding up to 100 custom shape classes.

Current pre-defined values are:

1 - Angle

2 - Bar

3 - Channel

4 - Cylinder

5 - Half Round

6 - Pipe

7 - Quarter Round

8 - Tee

9 - Tube

10 - Wide Flange

<sweep>.CustomShape Integer default: 0 -- integer; Custom_Shape

Get/set the state of the Use Built-In Selection / Use Custom Section radio buttons. When set to 1, the Custom Section will be active. When 0, the pre-defined Section will be active.

<sweep>.CustomShapeName UndefinedClass default: undefined -- string; Custom_Shape_Name;

Contains the name of the Custom Section object, or undefined if no custom cross-section has been picked yet.

<sweep>.Shapes ArrayParameter default: #(undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, ...) -- maxObject array; SubAnim

This is an array of 100 elements and is used to store the cross-section shapes.

All elements but the first one are read-only.

Elements 2 to 100 are used to store the class instances defined by the Build-in types controlled by the .CurrentBuiltInShape property and the "Build-in section" drop-down list.

In the beginning, element 2 is assigned an instance of the class defined by the first (default) cross-section in the \plugcfg\sweep.ini file (Angle by default). Selecting other elements from the list or setting .CurrentBuiltInShape to other values than 1 will create new shape class instances and store them in the respective CurrentBuiltInShape+1 elements of the array.

You can assign a new class instance of any shape to the first element of the array in order to make it available as custom shape when the .CustomShape property is set to 1.

For example,

theShape = circle radius:100 --create a circle

theMod = sweep() --create a sweep modifier

addModifier theShape theMod --add the sweep to the circle

--Assing an instance of class Helix to first element of the shapes array:

theMod.shapes[1] = Helix()

theMod.customShape = 1 --enable the use of the custom shape

Sweep Parameters

<sweep>.MirrorXZPlane BooleanClass default: false -- boolean; Mirror_On_XZ_Plane

Get/set the state of the Mirror on XZ plane option.

<sweep>.MirrorXYPlane BooleanClass default: false -- boolean; Mirror_On_XY_Plane

Get/set the state of the Mirror on XY plane option.

<sweep>.XOffset Float default: 0.0 -- animatable; float; X_Offset

Get/set the X Offset value. Controls the offset of the cross-section from the path along the cross-section's X axis.

<sweep>.YOffset Float default: 0.0 -- animatable; float; Y_Offset

Get/set the Y Offset value. Controls the offset of the cross-section from the path along the cross-section's Y axis.

<sweep>.Angle Float default: 0.0 -- animatable; angle;

Get/set the Angle value. Controls the rotation of the cross-shape around the axis of the path.

<sweep>.SmoothSection BooleanClass default: true -- boolean; Smooth_Section

Get/set the state of the Smooth Section option. When set to true, assign the same smoothing group to all faces generated for a single segment of the base (path) shape, resulting in smoothing along the cross-section.

<sweep>.SmoothPath BooleanClass default: true -- boolean; Smooth_Path

Get/set the state of the Smooth Path option. When set to true, assign the same smoothing group to all faces generated for a single segment of the cross-section shape for all base (path) shape's segments, resulting in smoothing along the base shape.

<sweep>.PivotAlignment Integer default: -1 -- integer; Pivot_Alignment

Get/set the Pivot Alignment option. Corresponds to the group of 9 checkbuttons.

Possible values are:

0 - Upper Left Corner

1 - Left

2 - Bottom Left Corner

3 - Up

4 - Center

5 - Bottom

6 - Upper Right Corner

7 - Right

8 - Bottom Right Corner

-1 or any value higher than 8 - Default, no alignment

<sweep>.Banking BooleanClass default: true -- boolean

Get/set the state of the Banking option.

<sweep>.UnionIntersections BooleanClass default: false -- boolean; Union_Intersections

Get/set the state of the Union Intersection option.

<sweep>.GenerateMappingCoords BooleanClass default: false -- boolean; Generate_Mapping_Coords

Get/set the state of the Gen.Mapping Coordinates option. When set to true, mapping coordinates will be generated where U goes around the cross-section and V goes along the base spline, same as with the Renderable Spline option in regular shapes.

<sweep>.UsePhysicalScaleUV BooleanClass default: false -- boolean; Real_World_Map_Size

Get/set the state of the Real-World Map Size option.

<sweep>.GenMatIDs BooleanClass default: true -- boolean; Generate_Material_IDs

Get/set the state of the Generate Material IDs option.

<sweep>.UsePathIDs BooleanClass default: false -- boolean; Use_Path_IDs

Get/set the state of the Use Section IDs option.

<sweep>.UseSectionIDs BooleanClass default: true -- boolean; Use_Shape_IDs

Get/set the state of the Use Path IDs option.

sweep Interfaces:

Interface: sweepInterface

Methods:

<void>pickCustomSection()

Corresponds to pressing the Pick button in the "Custom Section Types" group of controls of the "Section Type" rollout.

<void>mergeCustomSection()

Corresponds to pressing the Merge From File button in the "Custom Section Types" group of controls of the "Section Type" rollout.

<void>extractCustomSection()

Corresponds to pressing the Extract button in the "Custom Section Types" group of controls of the "Section Type" rollout.

<void>alignPivot()

Corresponds to pressing the Align Pivot button in the "Sweep Parameters" group of controls of the "Section Type" rollout.

Parameters and Interpolation Rollouts

Note:

To provide the built-in cross-section, the Sweep modifier creates class instances of the respective shape classes and stores these class instances in the .Shapes array.

The properties displayed in the Parameters and Interpolation rollouts are taken from the ParamBlock of the class instance generated for the cross-section.

The corresponding shape classes used for the built-in cross-sections are:

Angle - Angle : Shape

Bar - Rectangle : Shape

Channel - Channel : Shape

Cylinder - Circle : Shape

Half Round - HalfRound : Shape

Pipe - Pipe : Shape

Quarter Round - QuarterRound : Shape

Tee - Tee : Shape

Tube - WalledRectangle : Shape

Wide Flange - WideFlange : Shape

 

The cross-section object can be accessed as the 4th indexed subAnim of the sweep modifier,

For example:

theMod = sweep()

sweep:Sweep

theShape = Circle radius:100

$Circle:Circle01 @ [0.000000,0.000000,0.000000]

addModifier theShape theMod

OK

classof theMod[4].object

Angle

theMod[4].angle_width = 50 --set any property available in Angle Shape...

50

 

See also

Modifier Common Properties, Operators, and Methods

MAXWrapper Common Properties, Operators, and Methods

Value Common Properties, Operators, and Methods