Ali Torabi

Digital Architecture & Technology

Voronoi Tessellation »« Parametric Array, License Activation

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.

L-Systems in Parametric Array

Users can ask for sample scene!

, , , , , ,
June 19, 2010 at 12:14 pm
  • August 31, 2011 at 3:59 pmBURBAN

    I’am discovering pArray v2.1 and I try to reproduce the script built with v1.0.
    What kind of controller shall be used to introduce the expression that control the radius?
    /Object/Sweep/ Cylinder Section
    Radius > script: 1/(1+0.5*int((index1-2)/3))

    Spline1:Vertex 1 > script:

    p1 = getItem index:[1+int((index1-2)/3),1,1]
    if index1==1 then (

    Thank you for your work

  • October 31, 2010 at 10:23 pmadmin

    salam khanoome Zahra,
    lotfan video dar payeene haman tasvir ra check konid.
    Video ha roye youtube hast va Agar ba filtering internet dar iran moshkel darid mitooni as proxy estefade koni.

  • October 31, 2010 at 10:13 pmadmin

    Here is simple example of animating a parametric array:
    Let’s say we have an array that goes from one curve to another during 10 seconds. We assume the position of items along the first curve is set to the variable C1
    C1 = curvecontroller curve:$line01
    And for the next curve ($line02) we will have same expression:
    C2 = curvecontroller curve:$line02
    Now we are going to make an animation , if the position C1 transforms to C2 within 10 seconds in constant speed we should write :
    ‘s’ represents the seconds and 10 is the duration. The entire code is :
    c1 = curvecontroller curve:$Line01
    c2 = curvecontroller curve:$Line02

    Notice that you can assign any type of controllers to C1 and C2

  • October 31, 2010 at 8:42 pmHades


    Can you make a video tutorial how you create this ?
    Thank you in advance !


  • October 21, 2010 at 4:10 pmroclafamilia

    Helpful blog, bookmarked the website with hopes to read more!

  • October 18, 2010 at 7:25 pmzahra

    سلام آقای ترابی.
    این مدت خیلی از کسایی که تو زمینه مکس حرفه ای هستن سوال کردم چطوری میشه 1 بافت پارمتریک ایجاد کرد ولی متاسفانه فهمیدم توی ایران فقط 5 نفر این توانایی رو دارن.که من هم بهشون دسترسی ندارم.
    راستش من خیلی خوشحالم که شما توی این زمینه حرفه ای هستین.
    من از بافتی که روی اون گلدون ایجاد کردین خیلی خوشم اومده.چندتا پوسته در طرحم دارم که می خوام این بافت رو روش بندازم.
    آدرس ایمیلتون رو میتونم داشته باشم که اون پوسته رو براتون بفرستم ؟
    واقعاً ممنون میشم کمکم کنید.
    ایام به کام.

  • June 19, 2010 at 4:08 pmHristo Velev

    Nice setups!

Leave a Reply or trackback

You must be logged in to post a comment.