Herramienta Array (matriz)

Transcripción

Herramienta Array (matriz)
TUTORIAL 03B: HERRAMIENTA ARRAY
(MATRIZ)
En este tutorial conoceremos las diversas
herramientas de matrices que nos ofrece 3DSMAX como Array. array nos permite realizar
copias mediante filas y columnas, pero
además podremos realizar las copias en pisos (eje Z). Comenzaremos conociendo las
funciones de Array mediante la construcción
de primitivas base y luego aplicando la herramienta correspondiente.
Para comenzar, Abrimos 3DSMAX (no necesitaremos modificar ningún
parámetro por ahora).
Aplicando Array:
Antes de comenzar a utilizar esta herramienta previamente dibujaremos una
línea ortogonal (presionando Shift) mediante los shapes de 3DSMAX y dibujaremos
un cilindro que tendrá los siguientes
parámetros:
Radius: 5, Height: 100.
Centramos el cilindro en el punto de origen y guardamos. Ahora procederemos a aplicar Array a este cilindro, seleccionándolo previamente.
Como su nombre lo indica, Array (matriz) nos permite crear matrices de
objetos mediante filas y columnas que definirán copias tanto en los
ejes X, Y y/o Z. Podemos seleccionar esta herramienta en Tools >> Array. En el caso de nuestra escena, primeramente seleccionamos el cilindro y luego ejecutamos Array. Nos aparecerá el siguiente cuadro:
Donde tenemos lo siguiente:
Incremental/Totals X, Y y Z: si seleccionamos Incremental nos permite
incrementar los valores de las distancias, rotaciones o escalas entre
cada elemento, en Totals estableceremos los valores totales dependiendo del número de elementos. Ambos parámetros están relacionados entre
sí ya que por ejemplo, si tenemos 4 elementos en Count y en Totals X
establecemos la distancia 100, la distancia entre cada elemento en Incremental X será 25 de (ya que 25 x 4 = 100).
Move, Rotate y Scale: estas flechas son muy importantes
pues nos permitirán seleccionar las variables que queramos incrementar, tanto entre elementos como en los totales. Presionando cada flecha podemos establecer si
elegimos Incremental o Totals en cada transformación.
De esto se desprende que podremos ejecutar matrices de tipo rectangular, polar y escalada.
En el caso de los Incrementals y
Totals, las unidades serán las
siguientes: en el caso de move
los valores serán los que trabajamos por defecto o la unidad de medida que le asignemos a 3DSMAX.
En el caso de Rotate la unidad será en grados (degrees) y en el caso
de Scale, será de porcentaje (percent).
Array Dimensions: nos permite
establecer el tipo de matriz y
el o los ejes en los cuales se
crearán las copias. Si elegimos
1D, las copias se crearán en una
dimensión según los valores que
definamos en Incrementals. Si
elegimos 2D agregaremos una segunda dimensión o eje y si elegimos 3D,
tendremos las copias en las 3 dimensiones del espacio 3D.
Podremos ver la previsualización de nuestras
copias presionando el botón Preview. En Total in
Array veremos el total de los elementos que compondrán nuestra matriz y si hacemos click en Display as Box las copias se mostrarán como una caja
en lugar de las formas 3D. Cuando hayamos configurado los parámetros presionamos OK para confirmar
o Cancel para cancelar la operación. También podemos elegir el tipo de objeto resultante (Copy, Instance o Reference).
Aunque en principio parece un poco difícil entender este cuadro, realizaremos algunos ejercicios donde nos quedará claro el uso de esta
herramienta.
Para ello volvemos a nuestro cilindro, ahora coloquemos el valor 20 a
Incremental X en Move y en 1D asignemos el valor 6, junto con presionar Preview para ver el resultado, el cual debiera verse tal como en
la foto de abajo:
Notaremos que el cilindro se ha copiado 5 veces en el eje X lo que nos
da un total de 6 copias, y la distancia entre el punto de pivote de cada uno de los cilindros es de 20, lo que hace un total de 120 si vemos
el valor de Totals en X.
Ahora coloquemos -10 a Incremental Y sin cambiar el resto de los
parámetros. Esto hará que los elementos de la matriz se muevan en diagonal y hacia nosotros ya que ahora hemos agregado en el eje Y la distancia de -10 entre cada elemento, tal como se ve en la imagen de abajo. Esto es así porque recordemos que en el plano cartesiano, las distancias negativas en Y van hacia abajo. Si el valor fuera positivo las
formas formarían una diagonal pero hacia arriba de la línea de origen.
Notaremos que las copias se mantienen en la diagonal ya que como hemos
elegido la opción 1D, no crea más copias que en una sola “dimensión”
aún cuando podemos manejar los valores de X, Y y Z, pero afectarán sólo a esta fila o columna de copias.
Para corroborar esto, asignemos ahora el valor -10 a Incremental Z. Esto hará que la distancia entre cada elemento de la matriz tome el valor -10 en el eje Z y por ende las formas bajan. Notaremos también que
el valor Totals en Z es de -60, tal como se ve en la imagen de abajo:
De esto se desprende que si queremos realizar copias en el eje X sólo
basta colocar la cantidad de elementos en 1D y luego la distancia entre los elementos en Incremental X, en el caso de Y lo hacemos en Incremental Y y en el caso de Z lo realizamos en Incremental Z.
En el caso que utilicemos la opción Rotate, es mejor utilizar los valores en Totals ya que como se expresan en grados, es más fácil realizar las divisiones si se conoce el ángulo total. En este caso la matriz será de tipo polar y tomará como base el punto de pivote del
primer cilindro, y la rotación se efectuará en torno al eje que escojamos, en la foto de abajo por ejemplo, la rotación se efectúa en X.
Y aquí está el resultado de la rotación en torno a los ejes Y y Z,
aplicando el valor 360. En caso que realicemos la rotación en Z, debemos tener el cilindro en posición horizontal para ver el resultado,
tal como se ve en la imagen de más abajo:
Para el caso que utilicemos la opción Scale, es exactamente igual que
en los casos anteriores, la diferencia es que los valores estarán ex-
presados en porcentaje y los incrementos se aplicarán uno sobre otro.
Es decir, si por ejemplo en nuestro cilindro aplicamos el valor 16 en
incremental X y 111 (111%) en Incremental X Scale, la siguiente copia
se escalará con ese valor, y la subsiguiente será la copia anterior ya
escalada y se le volverá a aplicar ese 111%. El resultado en X en nuestro cilindro es el siguiente:
El resultado en Y, esta vez utilizando un 128% será el siguiente:
El resultado en Z, esta vez utilizando un 82% será el siguiente:
nótese que esta vez, la escala disminuye y por ende el tamaño de los
objetos de la matriz.
Debemos recordar que en el caso de Scale, el valor 100 corresponderá
al tamaño real de la forma 3D, y bajo ese margen estaremos reduciendo.
Por el contrario, valores superiores al 100 agrandarán las dimensiones
y por ende el objeto.
Y por supuesto, y al igual que en el caso de Spacing Tool, podemos combinar estos valores para formar diversos efectos en la matriz como
podemos ver en la foto de al lado donde se han modificado los valores
en Move, Rotate y Scale logrando este curioso efecto en el total de la
matriz 1D:
Ahora bien, ya somos capaces de
entender el manejo de las matrices en 1D, pero ahora ¿cómo creamos una matriz en 2 o 3 dimensiones? La respuesta está en el
cuadro Array Dimensions y para
activar la matriz en 2D simplemente cambiamos el modo a 2D y en el valor de Count asignamos la cantidad de copias. Sin embargo debemos tener en cuenta la opción Incremental Row donde además debemos asignar la distancia entre los elementos
de esta segunda dimensión.
Para aclarar esto, volvemos a nuestro cilindro y esta vez asignamos el
valor 20 en incremental en X (move), cambiamos a 2D y asignamos el valor 5 en Count. En Incremental Row Y escribimos el valor 20 y activamos
Preview. Hemos creado una matriz en 2D y el resultado es el de la foto
de la derecha. Como apreciamos, se crean 5 columnas en el eje Y y la
distancia entre los objetos es de 20.
Al igual que en el caso de las matrices 1D, podemos modificar el
movimiento de esta matriz simplemente manipulando los valores de Incremental Row. Si en el caso de nuestro cilindro modificamos el valor de
Incremental Row en X a 10, notaremos como la matriz 2D se mueve en diagonal hacia el eje X tomando como referencia la distancia 10 entre
los objetos.
También podemos realizar lo mismo en Z pero en este caso, la matriz subirá o bajará en diagonal tomando como referencia la distancia entre
objetos en Z. En el caso de la imagen de abajo, se han modificado los
parámetros de Incremental Row colocando el valor -29 en Z y manteniendo el valor de Y en 20.
Finalmente, si queremos obtener una matriz en 3 dimensiones simplemente cambiamos el modo de Array Dimensions a 3D, además de cambiar
los valores de Count y la distancia de Incremental Row en Z para ver
el resultado. En el caso de este ejercicio, en el modo 3D el valor de
Count será 2 y la distancia en Z será de 120 para ver el resultado, el
cual es el de la foto de abajo:
Debemos tomar en cuenta que si en el modo 3D cambiamos los valores de
Count en 1D y 2D, esto afectará a los elementos de toda la matriz. Y
al igual que en los casos anteriores, los valores que escribamos en X,
Y y Z en Incremental Row moverán los elementos de la matriz 3D en
torno a X, Y y Z. En la imagen de abajo por ejemplo, el valor en X de
Incremental Row es 30 y el de Z, 110. Los elementos de la fila en Z se
mueven hacia la izquierda, en torno al eje X.
Finalmente en este otro ejemplo, el valor en Y de Incremental Row es
-60 y el de Z, 110. Los elementos de la fila en Z se mueven hacia nosotros, en torno al eje Y.
Este es el fin del tutorial 03b.
TUTORIAL 03A: SPACING TOOL
(ESPACIADO)
En este tutorial conoceremos las diversas
herramientas de matrices que nos ofrece 3DSMAX como Spacing Tool, la cual nos permite
ir distribuyendo de manera precisa copias
de un objeto a través de un recorrido. Comenzaremos conociendo las funciones de Spacing Tool mediante la construcción de primitivas base, y luego aplicando la herramienta correspondiente.
Para comenzar, Abrimos 3DSMAX (no necesitaremos modificar ningún
parámetro por ahora).
Aplicando Spacing Tool:
Antes de comenzar a utilizar esta herramienta previamente dibujaremos
una línea ortogonal (presionando Shift) mediante los shapes de 3DSMAX
y dibujaremos un cilindro que tendrá los siguientes parámetros:
Radius: 5, Height: 100.
Centramos el cilindro en el punto de origen y guardamos. La idea es
que la escena nos quede de forma similar a la foto de abajo:
Como su nombre lo indica, Spacing Tool nos
permite distribuir copias de manera uniforme de un objeto en torno a un espacio determinado o recorrido. Podemos seleccionar
esta herramienta en Tools >> Align >> Spacing Tool (imagen de abajo a la derecha). En
el caso de nuestra escena, primeramente seleccionamos el cilindro y luego ejecutamos
spacing Tool. Nos aparecerá el siguiente
cuadro:
Si presionamos el botón Pick Path (obtener recorrido), podremos seleccionar la línea en la cual las copias se distribuirán de forma uniforme según el número de copias que establecimos en el campo Count. Si
en cambio elegimos la opción Pick Points (obtener puntos), podremos
elegir puntos cualesquiera en el espacio y en la recta que se forma entre estos se distribuirán nuestras copias.
En esta imagen de abajo vemos la aplicación de Spacing Tool mediante
la opción Pick Points: en el caso de nuestra escena, seleccionamos el
primer extremo de la línea y hacemos click, luego el siguiente para finalizar con click:
El resultado final es que las copias se distribuirán a lo largo de la
recta formada entre estos puntos, indicada en verde. Esto puede realizarse en cualquier coordenada del espacio 3D si utilizamos esta opción, sin necesidad de dibujar una línea.
Ahora bien, si elegimos la opción Pick Path nos bastará con elegir la
línea para que las copias se distribuyan en ella. En el caso de nuestra escena establecimos el valor 6 en Count lo cual se refleja claramente en el resultado final (imagen de abajo), además que el botón de
Pick Path ahora cambia al nombre de la línea.
Entre los parámetros más importantes de Spacing Tool encontramos los
siguientes:
Count: indica la cantidad de elementos. Podemos determinar la cantidad
de elementos que queremos distribuir en la línea o el espacio.
Spacing: espacio entre los puntos de pivote de cada elemento. Por defecto este nos distribuye equitativamente el espacio de los elementos
de acuerdo al recorrido o los puntos que hemos elegido, pero si lo activamos podemos modificar a nuestro antojo esta distancia, la cual
puede ser menor que el recorrido o salirse de este (foto de arriba).
Start Offset: nos permite definir la distancia de inicio de la distribución de los elementos. Por defecto la primera copia se establece
en el primer extremo de una línea o primer punto, pero si la activamos
podremos modificar esta distancia a nuestro antojo. En el caso de nuestra escena (imagen del abajo), se ha aplicado el valor 50 a Start Offset y claramente vemos como la distribución empieza a moverse 50 UG respecto al primer extremo de la línea.
End Offset: nos permite definir la distancia final de la distribución
de los elementos. Por defecto la última copia se establece en el segundo extremo de una línea o segundo punto, pero si la activamos podremos
modificar esta distancia a nuestro antojo. En el caso de nuestra escena (imagen de abajo), se ha aplicado el valor 50 a Start Offset y
claramente vemos como la distribución empieza a moverse 50 UG respecto
al extremo inferior de la línea.
Una cosa interesante de Start Offset y End Offset es que ambas pueden
combinarse y aplicarse al mismo tiempo, lo que influirá evidentemente
en la distancia final de las copias. Sin embargo, si activamos ambas
al mismo tiempo no podremos activar la opción de Spacing.
Debajo de estas opciones también podemos ver
un menú desplegable que nos indica particularmente qué tomaremos en cuenta en la subdivisión, como por ejemplo activar o desactivar
las opciones.
Las opciones de este menú son:
Free Center: centro libre.
Divide Evenly, Objects at ends: divide equitativamente objetos en los
extremos. Esta es la opción por defecto.
Centered, Specify Spacing: Centrado, se puede especificar espacio mediante Spacing.
End Offset: especificar final de recorrido.
End Offset, divide Evenly: final de recorrido, dividir equitativamente.
Start Offset, Specify Spacing: final de recorrido, especificar espacio.
Start Offset: especificar inicio de recorrido.
Start Offset, divide Evenly: inicio de recorrido, dividir equitativamente.
Start Offset, Specify Spacing: inicio de recorrido, especificar espacio.
Specify Offsets and Spacing: especifica inicio, fin de recorrido y espacio entre los elementos.
Specify Offsets, Divide Evenly: especifica inicio, fin de recorrido y
dividir equitativamente.
Space from end, Unbounded: al activarlo y aumentar el valor de Space,
End Offset tomará el mismo valor de forma ilimitada.
Space from end, Specify Number: al activarlo y aumentar el valor de
Count, End Offset tomará el mismo valor que Spacing y los objetos se
irán distribuyendo en el recorrido (tomando el extremo inicial como
base), aunque a mayor cantidad de objetos más pequeño es el valor de
spacing.
Space from end, Specify Spacing: al activarlo y aumentar el valor de
Spacing, los objetos irán disminuyendo su número. Si disminuimos su
valor, los objetos aumentarán en cantidad y se distribuirán a lo largo
del recorrido a partir del extremo final.
Space from Start, Unbounded: al activarlo y aumentar el valor de Spacing, Start Offset tomará el mismo valor de forma ilimitada.
Space from Start, Specify Number: al activarlo y aumentar el valor de
Count, Start Offset tomará el mismo valor que Spacing y los objetos se
irán distribuyendo en el recorrido (tomando el extremo final como
base), aunque a mayor cantidad de objetos más pequeño es el valor de
spacing.
Space from Start, Specify Spacing: al activarlo y aumentar el valor de
Spacing, los objetos irán disminuyendo su número. Si disminuimos su
valor, los objetos disminuir en cantidad y se distribuirán a lo largo
del recorrido a partir del extremo inicial.
Specify Spacing, Matching Offsets: dividir equitativamente los objetos, pero estos se distribuyen hacia los extremos del recorrido y disminuirán en cantidad según aumentemos el valor de Spacing.
Divide Evenly, No Objects at Ends: dividir equitativamente los objetos, pero estos se distribuyen hacia los extremos del recorrido según
aumentemos los objetos en Count.
Context: esta herramienta nos permite elegir bajo qué
relación se especifica la distribución de los objetos.
En el caso de la opciòn llamada Edges, tomará como punto
un lado de la forma 3D de acuerdo a la imagen de abajo:
Y en el caso de Centers tomará el centro de esta (normalmente el punto
de pivote):
Una opción muy interesante de context es Follow (seguir), si la activamos permitirá a formas no redondas seguir el recorrido de la línea, tomando como referencia los ejes locales de los objetos. Esto es muy
útil sobre todo cuando lo aplicamos en elementos ortogonales. En la imagen podemos ver la distribución típica de una box 3D a lo largo de
una línea curva mediante Spacing Tool:
En la imagen de abajo (con Follow aplicado) vemos claramente que las
formas siguen a la línea.
Type of Object: en esta opción podemos elegir el tipo de
copia que realizará spacing Tool de acuerdo a los tipos
que conocemos: Copy, Instance o Reference.
Finalmente podemos aplicar la transformación presionando Apply o cancelarla mediante Cancel.
Spacing Tool funciona tanto en formas rectas o curvas, también lo hace
en formas 2D cerradas como rectángulos o elipses, aunque los efectos
serán dispares según activemos la opción Follow o no.
Este es el fin del tutorial 03a.

Documentos relacionados