Positioning items based on other items location and dimensions.
Randomize function inside the script controller.
How to use getItem function to address a specific property of an item inside the array.
Note: the getItem function returns the value of specific property of the specific object inside the array. getItem index:[index1,index2,index3]prop:property
Use script controller to access objects properties outside of the array.
control the radius of cylinders in array according to their distance from a specific object.
How to use setTarget command Addressing properties of other objects from script controller.
Using getItem command the get the value of specific property of the current item.
Note1: setTarget function can return the value of the any propety of any object outside the array. setTarget object:object nameprop:property name
Note2: if you dont mention the index argument in getItem function it returns the value
of the property for the current item in the array. getItem prop:property name
Use curve controller to change U & V offsets of a surface controller.
Using preview mode to handle large number of items in the array.
surfaceController takes following arguments: surface:surface name –Name of object in 3ds Max feedback:transform/position/rotation –function returns transform matrix, position in point3 value and rotation in EulerAngles value uOffset:offset value –Increase or decrease offset in U direction vOffset:offset value–Increase or decrease offset in V direction normalOffset:offset value –increase or decrease the normal offset mode:1 or 2 — set the controller in relative mode (2) or absolute mode (1) order:1 to 9— choose the order of rotation (items in drop down menu) works only when feedback is set to rotation data:1 or 2 — use uv-mapping information (2) or NURBS evaluation functions (1) uv:1 or 2— choose the uv direction. surfaceID:index number— identify the surface index when works with nurbs object or choose the UV mapping channel when working with mapping information
Use conditional statements to change the index value.
Reference: curve controller function takes the following arguments: curve:object name–The name of object in 3ds Max dim:1,2 or 3— set the controller on specific dimension. feedback:transform/position/rotation –function returns transform matrix, position in point3 value and rotation in EulerAngles value localOffset:offset value— offset the index value and shifts item along the path. endOffset:offset value— move all items away from the last point of the path. startOffset:offset value— move all items away from the first point of the path mode :1 or 2— set the controller in absolute mode (1) or relative (2) order:1 to 9— choose the order of rotation (items in drop down menu) works only when feedback is set to rotation
How to control items along one direction using linear controller in a multi-dimensional array.
Reference: linear controller function takes the following arguments i:index value — index of item in X direction j:index value — index of item in Y direction K:index value — index of item in Z direction dim:dimensions in point3 format— defines the directions that linear controller will be applied on. for example [1,0,0] means only in x direction ,[0,1,1] means in Y and Z. Note1: if you don’t pass the i,j or kargument to the function it considers the current item indexes by default.
Note2: if you dont pass the dim argument to the function it considers all directions by default.