Hola, en esta oportunidad realizare un ejercicio en el que pondremos en practica el envió de datos a un procedimiento o función, el cual usara estos datos para personalizar una cadena de 
n cubos.
El enunciado seria el siguiente:
- Se necesita crear una cadena de cubos alineados consecutivamente.
- La cantidad de cubos es variable.
- Estos deben estar emparentados correctamente desde su base a su extremo más lejano.
- El tamaño de los cubos no afecta su distribución
Para resolverlo necesitaremos:
- Un procedimiento que reciba tres atributos
- limiteX: nos indica cuantos cubos crearemos.
- sizeCubo: tamaño de los cubos que crearemos.
- nomCubo: nombre que le asignaremos a los cubos.
- Comando For para repetir las instrucciones.
- Comando If para evaluar y asignar los parents.
Comenzaremos definiendo el procedimiento "cadenaCubos" querecibirá
 los tres valores para configurar nuestra cadena, luego usaremos el comando "For" para repetir "n" veces la instrucción y finalizaremos con el comando "If" para generar el parent solo después
 de haber creado el primer cubo.
El resultado usando Mel seria el siguiente:
| 
proc cadenaCubos(int $limiteX,float $sizeCubo,string $nomCubo){
    for ($x=0;$x<$limiteX;$x++)    {    polyCube -h $sizeCubo -w $sizeCubo -d $sizeCubo -n ($nomCubo+"_"+$x);    move 0 ($x*$sizeCubo) 0;
    if($x>0)        {            parent ($nomCubo+"_"+$x) ($nomCubo+"_"+($x-1));        }    }}cadenaCubos(10,1,"cubo"); 
 
 
 
 | 
Su equivalente en Python seria así
:
| 
import maya.cmds as cmds
def cadenaCubos(limiteX,sizeCubo,nomCubo):
   for x in range(limiteX):      cmds.polyCube(name=(nomCubo+'_'+str(x)),depth=sizeCubo,height=sizeCubo,width=sizeCubo)      cmds.move(0,(x*sizeCubo),0)
      if x>0:         cmds.parent(nomCubo+'_'+str(x),nomCubo+'_'+str(x-1))
cadenaCubos(10,1,"cubo") 
 
 
 
 | 
El resultado es una cadena de cubos emparentados que ya podemos animar.
|  | 
| Ejemplo animado. | 
Espero les sea útil este pequeño ejercicio, un saludo.
 
Comentarios