# Ali Torabi

Digital Architecture & Technology

## Randomizing Surface division in Para 3d 3.0

See Para 3d in Action!
Again randomizing surface division and use of mix controller to implement two magnets.
this time with para 3d V 3.0

, , , , , , ,
April 1, 2013 at 2:07 pm Comments (0)

## Randomizing thickness in surface paneling

In this video you learn how to use random controller within surface controller to change the thickness of panels. Also you learn how to control the random values while using random controller on multiple properties/controllers.

, , , , , , , ,
May 23, 2012 at 9:52 pm Comments (0)

## Introducing the Mix controller

This video demonstrates use of MIX Controller in order to mix the effect of two independent curve controllers. Each of curve controllers is set to control the position of the box along a unique shape in two different dimensions. Incorporating both in one Mix controller approximate a surface which is result of translating one of the curves along the other one.

, , , , ,
August 22, 2011 at 1:16 am Comments (4)

## Parametric Array & L-System

Did you know that you can produce L-systems with parametric array!

Here is some experience with parametric array of a single line. I have used getItem function to access the parent node using the method below.

getItem index:[1+int((index1-2)/4),1,1]

Denominator (4) defines the number of branches per node. the script above returns the parent of the current object in L-system. Using this trick, you can adjust the start point of the line according to the end point of its parent. Of course the end point is just a transformation of the start point which defines the production rule of L-System. In new version of parametric array this will come as new controller and much more easy to implement on any type of object.

Users can ask for sample scene!

, , , , , ,
June 19, 2010 at 12:14 pm Comments (7)

## Animating parametric array

Level: Intermediate
In This Video:

• Using time value to animate items in the array.
• Offseting time value by adding index to it.
• Use Trigonometric functions to distribute items in the array on an assuming surface.
• , , , , , , , ,
April 22, 2010 at 5:15 pm Comments (12)

## Parametric brick wall.

In This Video:

• 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

, , , , , , , ,
April 22, 2010 at 5:01 pm Comments (13)

## Circular pattern response to an attractor object

In This Video:

• 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 name prop: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

, , , , , , ,
April 22, 2010 at 4:55 pm Comments (25)

## Rotating panels along the surface

In This Video:

• 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

, , , , , , , , ,
April 22, 2010 at 4:16 pm Comments (4)

## Combine controllers inside your script

In This Video:

• Use curve controller to pass offset value to the surface controller.
• Set the dim argument to apply the curve controller on a certain direction.
• , , , , , , , , , , , , ,
April 18, 2010 at 3:31 pm Comments (2)