Arraymodifier - superclass: modifier; super-superclass:MAXWrapper - 114:0 - classID: #(2394076151L, 1473922114L); creatable: true
The ArrayModifier interface provides access to the 3ds Max parametric Array Modifier.
Arraymod...
Arraymodifier...
-- ArrayMod Demo
-- create a spline
resetMaxFile #noprompt
myStar = Star radius1:100 radius2:50
myTeapot = Teapot radius:10
myArray = ArrayMod()
addmodifier myTeapot myArray
-- by default an array is type grid, change this to spline and
-- set the target spline to the star
myArray.type = 2 -- spline
myArray.referenceSpline = myStar
myArray.countX = 30
myArray.splinePercentType = 1 --loop
myArray.randomizationRotationLink = true -- x value applies to all axes
with animate on (
at time 0 (
myArray.splinePercentAmount = 0
myArray.randomizationRotationX = 0
)
at time 80 (
myArray.splinePercentAmount = 50
myArray.randomizationRotationX = 60
)
)
playAnimation()
<arraymodifier>.arrayRadius Float default: 10.0 -- animatable; float
Gets/sets the radius of the array in scene units, when the distribution type is radial.
<arraymodifier>.byElement BooleanClass default: false -- boolean
Specifies whether to randomly use each element in a multi-element object as array clones.
<arraymodifier>.center BooleanClass default: false -- boolean
Specifies whether to re-position the array so that it is centered around the original object location.
<arraymodifier>.countX Integer default: 5 -- animatable; integer
Gets/sets the number of clones in the X dimension, when the distribution type is Grid.
<arraymodifier>.countY Integer default: 1 -- animatable; integer
Gets/sets the number of clones in the Y dimension, when the distribution type is Grid.
<arraymodifier>.countZ Integer default: 1 -- animatable; integer
Gets/sets the number of clones in the Z dimension, when the distribution type is Grid.
<arraymodifier>.distributionMethod Integer default: 1 -- integer
Sets the grid distribution method where:
<arraymodifier>.dynamicSpacing BooleanClass default: false -- boolean
Specifies whether to use dynamic spacing, which inserts clones between the first and last clones. When false, new clones are appended to the end of the array.
<arraymodifier>.elementCenter BooleanClass default: true -- boolean
Specifies whether to set the pivot of each clone on its x axis to its center, when .byElement
is true.
<arraymodifier>.elementSeed Integer default: 12345 -- integer
Gets/sets the random seed used to distribute elements when .byElement
is true.
<arraymodifier>.endAngle Float default: 360.0 -- animatable; float
Gets/sets the end angle of the array, when the distribution mode is radial.
<arraymodifier>.equidistantRings BooleanClass default: false -- boolean
Specifies whether to make rings equidistant, when the distribution mode is radial and there is more than one ring (.rings
> 1). This is done by adding as many clones as possible to each ring, using the offset and spacing parameters.
<arraymodifier>.flip BooleanClass default: false -- boolean
Specifies whether to flip the distribution of the array, when the array is distributed on a spline.
<arraymodifier>.height Float default: 1.0 -- animatable; float
Gets/sets the height of the array, when the distribution mode is grid.
<arraymodifier>.length Float default: 1.0 -- animatable; float
Gets/sets the length of the array, when the distribution mode is grid.
<arraymodifier>.offsetRings Float default: 1.0 -- animatable; float
Gets/sets the spacing between clones in each ring, when the distribution method is radial.
<arraymodifier>.offsetRows Float default: 1.0 -- animatable; float
Gets/sets the spacing between rows, when the distribution method is radial.
<arraymodifier>.offsetX Float default: 1.0 -- animatable; float
Gets/sets the X axis offset when the distribution mode is Grid.
<arraymodifier>.offsetY Float default: 1.0 -- animatable; float
Gets/sets the Y axis offset when the distribution mode is Grid.
<arraymodifier>.offsetZ Float default: 1.0 -- animatable; float
Gets/sets the Z axis offset when the distribution mode is Grid.
<arraymodifier>.orientation Float default: 100.0 -- animatable; float
Gets/sets the orientation of the clones relative to the original object's orientation, when the distribution method is radial.
<arraymodifier>.packElements BooleanClass default: false -- boolean
Specifies whether to pack elements along the X axis, when the distribution method is grid.
<arraymodifier>.radialAxis Integer default: 2 -- integer
Specifies which axis is used for radial distribution, where:
<arraymodifier>.radialCount Integer default: 5 -- animatable; integer
Gets/sets the number of clones (per row) in the array, when distribution type is radial.
Gets/sets the offset amount
<arraymodifier>.radialPhase Float default: 0.0 -- animatable; float
<arraymodifier>.radialScaleMethod Integer default: 0 -- integer
<arraymodifier>.referenceSpline UndefinedClass default: undefined -- node
Gets/sets the spline node used when the distribution method is spline.
<arraymodifier>.retainOrientation BooleanClass default: false -- boolean
Specifies whether to retain the original object's orientation, when the distribution mode is spline or surface.
<arraymodifier>.rings Integer default: 1 -- animatable; integer
Gets/sets the number of rings when the distribution mode is radial.
<arraymodifier>.rows Integer default: 1 -- animatable; integer
Gets/sets the number of rows when the distribution mode is radial.
<arraymodifier>.spacingRings Float default: 0.0 -- animatable; float
Gets/sets the amount of space between rings in display units.
<arraymodifier>.spacingRows Float default: 0.0 -- animatable; float
Gets/sets the amount of space between rows in display units.
<arraymodifier>.spacingX Float default: 0.0 -- animatable; float
Gets/sets the distance between each clone in the X axis, when the distribution mode is grid > relative offset.
<arraymodifier>.spacingY Float default: 0.0 -- animatable; float
Gets/sets the distance between each clone in the Y axis, when the distribution mode is grid > relative offset.
<arraymodifier>.spacingZ Float default: 0.0 -- animatable; float
Gets/sets the distance between each clone in the Z axis, when the distribution mode is grid > relative offset.
<arraymodifier>.splineAxialAngle Float default: 0.0 -- animatable; float
Gets/sets the placement of the clones around the axis of the spline, in degrees, when the distribution method is spline.
<arraymodifier>.splineAxis Integer default: 0 -- integer
Gets/sets the axis of the spline around which to distribute clones, when the distribution method is spline, where:
<arraymodifier>.splineDistributionMethod Integer default: 0 -- integer
Gets/sets the distribution method when the distribution type is spline, where:
<arraymodifier>.splinePercentAmount Float default: 0.0 -- animatable; float
Gets/sets the position of the clones along the spline, when the distribution method is spline.
<arraymodifier>.splinePercentType Integer default: 1 -- integer
Gets/sets the position transform method, when the distribution type is spline, where:
<arraymodifier>.splineSurface UndefinedClass default: undefined -- node
Gets/sets a scene object onto which to project the array.
<arraymodifier>.splineVariation Float default: 0.0 -- animatable; float
Gets/sets the percent of random variation to apply to clone positions when the distribution method is spline.
<arraymodifier>.splineVariationSeed Integer default: 12345 -- integer
Gets/sets the random number seed for the variation value.
<arraymodifier>.staggerRings BooleanClass default: false -- boolean
Gets/sets whether to stagger rings, when is are more than one ring, and the distribution method is radial.
<arraymodifier>.staggerRows BooleanClass default: false -- boolean
Gets/sets whether to stagger rows, when is are more than one row, and the distribution method is radial.
<arraymodifier>.startAngle Float default: 0.0 -- animatable; float
Gets/sets the starting angle when the distribution method is radial.
<arraymodifier>.strength Float default: 100.0 -- animatable; float
Gets/sets the strength value (as a percent) when the distribution method is grid, radial or spline.
<arraymodifier>.surfaceMethod Integer default: 0 -- integer
Gets/sets the surface distribution method, where:
<arraymodifier>.surfaceReference UndefinedClass default: undefined -- node
Gets/sets the scene object to project the array on to when the distribution method is Surface.
<arraymodifier>.type Integer default: 0 -- integer
Gets/sets the array modifier distribution method, where:
<arraymodifier>.useStartEndAngle BooleanClass default: false -- boolean
Specifies whether to use the start and end angle values for placing clones when the distribution type is radial.
<arraymodifier>.width Float default: 1.0 -- animatable; float
Gets/sets the array width, when the distribution method is grid.
<arraymodifier>.gridLocalRotationMethod Integer default: 0 -- integer
Gets/sets the local rotation method, when the distribution method is grid, where:
<arraymodifier>.gridPositionMethod Integer default: 0 -- integer
Gets/sets the Grid Position Method, when the distribution method is grid, where:
<arraymodifier>.gridScaleMethod Integer default: 0 -- integer
Gets/sets the Grid Scale Method, when the distribution mode is grid, where:
<arraymodifier>.localRotationSeed Integer default: 12345 -- integer
Gets/sets the local rotation randomization seed.
<arraymodifier>.localRotationX Float default: 0.0 -- animatable; float
Gets/sets the local rotation around the X axis, in degrees.
<arraymodifier>.localRotationY Float default: 0.0 -- animatable; float
Gets/sets the local rotation around the Y axis, in degrees.
<arraymodifier>.localRotationZ Float default: 0.0 -- animatable; float
Gets/sets the local rotation around the Z axis, in degrees.
<arraymodifier>.posX Float default: 0.0 -- animatable; float
Gets/sets the X axis position value when the distribution method is grid, spline, or surface.
<arraymodifier>.posY Float default: 0.0 -- animatable; float
Gets/sets the Y axis position value when the distribution method is grid, spline, or surface.
<arraymodifier>.posZ Float default: 0.0 -- animatable; float
Gets/sets the Z axis position value when the distribution method is grid, spline, or surface.
<arraymodifier>.radialLocalRotationMethod Integer default: 0 -- integer
Gets/sets the Local Rotation method, where:
<arraymodifier>.radialOffset Float default: 0.0 -- animatable; float
Gets/sets the radial offset value, which moves each clone successively and tangentially from the main axis of the array.
<arraymodifier>.ringOffset Float default: 0.0 -- animatable; float
Gets/sets the amount by which each ring of clones of moved successively along the axis of the array.
<arraymodifier>.ringPhase Float default: 0.0 -- animatable; float
Gets/sets the rotation of every other ring around around the main axis, in degrees.
<arraymodifier>.scaleLink BooleanClass default: false -- boolean
Gets/sets whether to link the world scale transform method for all axes to the X axis value.
<arraymodifier>.scaleX Float default: 100.0 -- animatable; float
Gets/sets the percentage by which to modify the scale of clones along the X axis.
<arraymodifier>.scaleY Float default: 100.0 -- animatable; float
Gets/sets the percentage by which to modify the scale of clones along the Y axis.
<arraymodifier>.scaleZ Float default: 100.0 -- animatable; float
Gets/sets the percentage by which to modify the scale of clones along the Z axis.
<arraymodifier>.splineLocalRotationMethod Integer default: 0 -- integer
Gets/sets the Local Rotation method when the distribution method is spline, where:
<arraymodifier>.splinePositionMethod Integer default: 0 -- integer
Gets/sets the Position method when the distribution method is spline, where:
<arraymodifier>.splineScaleMethod Integer default: 0 -- integer
Gets/sets the Scale method when the distribution method is spline, where:
<arraymodifier>.worldRotationMethod Integer default: 0 -- integer
Gets/sets the world rotation method where:
<arraymodifier>.worldRotationSeed Integer default: 12345 -- integer
Gets/sets the random number seed for world rotation.
<arraymodifier>.worldRotationX Float default: 0.0 -- animatable; float
Gets/sets the value by which to rotate the array's world orientation around the X axis.
<arraymodifier>.worldRotationY Float default: 0.0 -- animatable; float
Gets/sets the value by which to rotate the array's world orientation around the Y axis.
<arraymodifier>.worldRotationZ Float default: 0.0 -- animatable; float
Gets/sets the value by which to rotate the array's world orientation around the Z axis.
<arraymodifier>.applyTo Float default: 100.0 -- animatable; float
Gets/sets the percentage of clones that randomization is applied to.
<arraymodifier>.applyToSeed Integer default: 12345 -- integer
Gets/sets the random seed for the .applyTo
value.
<arraymodifier>.positionSeed Integer default: 12345 -- integer
Gets/sets the Position value group randomization seed.
<arraymodifier>.randomizationPositionLink BooleanClass default: false -- boolean
Specifies whether to use the X parameter to control all three axes. In the UI this parameter is represented as a link button.
<arraymodifier>.randomizationPositionX Float default: 0.0 -- animatable; float
Gets/sets the maximum amount to randomly move clones along the X axis.
<arraymodifier>.randomizationPositionY Float default: 0.0 -- animatable; float
Gets/sets the maximum amount to randomly move clones along the Y axis.
<arraymodifier>.randomizationPositionZ Float default: 0.0 -- animatable; float
Gets/sets the maximum amount to randomly move clones along the Z axis.
<arraymodifier>.randomizationRotationLink BooleanClass default: false -- boolean
Specifies whether to use the X parameter to control all three axes. In the UI this parameter is represented as a link button.
<arraymodifier>.randomizationRotationX Float default: 0.0 -- animatable; float
Gets/sets the maximum amount to randomly rotate clones along the X axis.
<arraymodifier>.randomizationRotationY Float default: 0.0 -- animatable; float
Gets/sets the maximum amount to randomly rotate clones along the Y axis.
<arraymodifier>.randomizationRotationZ Float default: 0.0 -- animatable; float
Gets/sets the maximum amount to randomly rotate clones along the Z axis.
<arraymodifier>.randomizationScaleLink BooleanClass default: false -- boolean
Specifies whether to use the X parameter to control all three axes. In the UI this parameter is represented as a link button.
<arraymodifier>.randomizationScaleX Float default: 0.0 -- animatable; float
Gets/sets the maximum amount to randomly scale clones along the X axis.
<arraymodifier>.randomizationScaleY Float default: 0.0 -- animatable; float
Gets/sets the maximum amount to randomly scale clones along the Y axis.
<arraymodifier>.randomizationScaleZ Float default: 0.0 -- animatable; float
Gets/sets the maximum amount to randomly scale clones along the Z axis.
<arraymodifier>.rotationSeed Integer default: 12345 -- integer
Gets/sets the random seed for rotation.
<arraymodifier>.scaleSeed Integer default: 12345 -- integer
Gets/sets the random seed for scale.
<arraymodifier>.matIDFrom Integer default: 1 -- integer
Gets/sets the minimum material ID to randomly apply to clones.
<arraymodifier>.matIDSeed Integer default: 12345 -- integer
Gets/sets the seed value to use to generate random material IDs.
<arraymodifier>.matIDTo Integer default: 1 -- integer
Gets/sets the maximum material ID to randomly apply to clones.
<arraymodifier>.uvAdditive BooleanClass default: true -- boolean
Specifies whether to add UVW values to existing UVW values from the source map.
<arraymodifier>.uvChannel Integer default: 1 -- integer
Gets/sets the target UVW channel number.
<arraymodifier>.uvMethod Integer default: 0 -- integer
Gets/sets the UV method, where:
<arraymodifier>.uvNormalize BooleanClass default: true -- boolean
Specifies whether to normalize UVW values from 0.0 to 1.0.
<arraymodifier>.uvSource Integer default: 1 -- integer
Gets/sets the source UVW map channel number when .uvAdditive
is true.
<arraymodifier>.cullObject UndefinedClass default: undefined -- node
Gets/sets a scene node to remove nodes/cull the result with.
<arraymodifier>.invertCull BooleanClass default: false -- boolean
Specify whether to invert the remove/cull operation.
<arraymodifier>.remove Float default: 0.0 -- float
Gets/sets the percentage of clones to remove.
<arraymodifier>.removeSeed Integer default: 12345 -- integer
Gets/sets the random number seed for random clone removal.
<arraymodifier>.useInstances BooleanClass default: true -- boolean
Specifies whether to create a new set of instances when the Create Objects button is clicked.
Properties:
Methods:
<integer>version()
Returns the Array Modifier version number.
<void>clearCache()
Clears the array modifier cache.
<void>CreateObjects()
Creates a new set of objects based on the clones in the array.
Actions: