3DSMAX Tutorial 10c: Animación mediante Path Constraint

En el mundo de la animación 3D todo lo que se mueve, rota o escala, es decir, todo lo que es posible de “animar” siempre está manejado por un controlador. En el caso de 3DSMAX, un controlador es un plugin que controla el almacenamiento y la interpolación de todos los valores animados, es decir, gestiona todas las tareas de animación. En el programa tenemos tres tipos de controladores predeterminados y estos son los siguientes:

– Posición: Position XYZ.
– Rotación: XYZ Euler.
– Escala: Escala Bézier.

Además de los controladores de animación standard, también disponemos de un tipo especial de controladores llamados Restrictores o Constraints los cuales son precisamente “restrictores de movimiento” que nos facilitan bastante el proceso de animación, ya que gracias a estos se puede restringir y/o controlar la posición, rotación y escala de un objeto. Dependiendo del tipo de animación que deseemos realizar dependerá la cantidad de objetos que necesitemos para aplicar un constraint.

En este tutorial veremos animación de objetos mediante el constraint especial llamado Path Constraint ya que al igual que en el caso de Anipath de AutoCAD, este controlador nos permitirá animar cámaras enlazándolas a uno o más recorridos llamados PATH, los cuales pueden ser abiertos o cerrados ya que en el caso de la Arquitectura, la animación base son las cámaras las cuales se utilizan para enfocar o mostrar el exterior e interior de un proyecto o edificación. Si bien este constraint es el más indicado para animar cámaras y/o los objetivos de estas, también es útil para realizar algunas animaciones 3D las cuales también serán vistas en este apunte.

Para la correcta realización de este tutorial, en la página de descargas de los archivos de tutoriales 3D está el archivo base llamado 3dsmax_animacion_pathconstraints.rar.

Constraints o Restrictores de animación

Como ya dijimos en un principio, un Constraint es un controlador o restrictor de animación y en el caso de 3DSMAX, tenemos varios tipos de estos los cuales se utilizan para diferentes tipos de animaciones. Estos pueden encontrarse en el menú Animation >> Constraints de la parte superior de 3DSMAX:

En total tenemos siete tipos de constraints los cuales son:

1) Attachment Constraint: Asocia la posición de un objeto a la cara de otro.
2) Surface Constraint: Limita la posición de una superficie 2D a la superficie de otro elemento 3D.
3) Path constraint: Limita el movimiento de un objeto a lo largo de un recorrido.
4) Position constraint: Limita la posición de un objeto a la posición de otro.
5) Link Constraint: Genera uno o más vinculos entre el objeto que tiene la restricción y otros.
6) LookAt constraint: Limita la orientación de un objeto a la posición de otro.
7) Orientation constraint: Limita la rotación de un objeto a la rotación de otro.

Dependiendo de qué es lo que queremos animar dependerá el o los constraints que aplicaremos. Para este tutorial ocuparemos específicamente el Constraint llamado Path Constraint, ya que es el que más se utiliza en el área de la Arquitectura, aunque también veremos otros casos puntuales de animación. El resto de los Constrains serán enseñados en un siguiente tutorial.

Path Constraint

Como ya definimos anteriormente, Path Constraint es un restrictor que limita el movimiento de un objeto a lo largo de un Path o recorrido que definamos previamente, creando los cuadros de animación necesarios para efectuar la animación. Este recorrido puede ser cualquier forma lineal 2D como por ejemplo círculos, elipses, líneas rectas, curvas, splines, etc. sean estas abiertas o cerradas, siempre y cuando estén unificados sus vértices. Estos recorridos podrán ser creados fácilmente mediante las herramientas de líneas o Splines.

Ejemplos de diferentes tipos de recorridos o Paths.

Para entender el funcionamiento cabal de la herramienta desarrollaremos tres ejercicios base:

a) Animación de un avión mediante un recorrido normal.
b) Animación de un tren en una vía continua (muchos elementos en el mismo recorrido).
c) Animación de un proyecto de vivienda mediante cámaras.

a) Animación de recorrido normal

Para este caso abriremos el primero de los archivos base llamado 3dsmax_animacion_pathconstraint01.max, el cual nos muestra un avión con su respectivo “aeropuerto” y el recorrido base el cual animaremos mediante Path Constraint. Al abrir el archivo, se nos muestra lo siguiente:

Como notamos en el archivo, tenemos una cámara que apunta hacia nuestro avión la cual nos mostrará todo el proceso de animación aunque en principio no enfoca a este. En este caso, la dejaremos tal cual debido a que ya está animada y porque lo que nos interesa realmente es animar el avión mismo. También notaremos que este está vinculado a un Dummy ya que la idea es que la restricción se aplique a este y no al avión mismo, tal como se especificó en el tutorial de Jerarquías. Para aplicar el Path Constraint realizaremos lo siguiente: seleccionamos el Dummy del avión e iremos a Animation >> Constraints y elegiremos Path Constraint. Notaremos que al aplicarlo, veremos una línea segmentada similar a cuando vinculamos los objetos. En este caso, elegiremos el recorrido definido en la pista de aterrizaje y realizamos Click para terminar de asignar el restrictor.

Al terminar la operación notaremos que el avión y el Dummy se conectan con el inicio del recorrido y aparentemente el avión está listo para “volar”. También notaremos que se han creado cuadros clave en 0 y en 1000 y con ello, ya podremos ver la animación. Pero, si presionamos play para reproducirla, notaremos que al elevarse y al doblar la curva el avión no vuela de forma realista puesto que no “sigue” el patrón del recorrido, tal como se aprecia en la secuencia siguiente:

Recorrido del avión en la vista Top.

Recorrido del avión en la vista Front.

Para resolver esto debemos conocer a fondo el panel de animación, el cual es similar al panel para modificar los objetos 3D pero que como su nombre lo indica, está pensado para editar los parámetros de las animaciones.

El panel de animación o Motion Panel

Cuando realizamos cualquier animación de un objeto mediante la aplicación de un Constraint, inmediatamente podremos acceder al Panel de Animación o Motion. Este se encuentra por defecto en el área derecha de la interfaz junto al resto de los comandos ya que de hecho, es el cuarto de los paneles principales:

Ubicación del panel de animación o Motion Panel en la interfaz de 3DSMAX.

Además de las persianas Assign Controller y PRS Parameters, podemos acceder a los paneles más importantes de este: Position List y Path Parameters. Position List nos mostrará todos los Constraints que se han aplicado en el objeto y en el caso de nuestro Dummy, claramente podremos ver Path Constraint con una flecha que indica que este está activo:

Como vemos en la imagen, podemos dejar el Path Constraint ya aplicado mediante el botón Set Active (establecer como activo). Si queremos terminar el vínculo, dejar los objetos en la posición original y por ende, eliminar el Path Constraint, lo seleccionamos y presionamos Delete. La opción Cut nos permitirá cortar la restricción y aplicarla en otro momento. Weight establece el nivel de dependencia del vínculo o el “peso” de este entre los objetos, y por defecto siempre será 100 (por ciento), lo que implica la conexión total del objeto al recorrido o Path. Si disminuimos este valor el vínculo del objeto al recorrido será menor y si el peso es 0, el objeto no se vinculará al recorrido y por lo tanto no se animará.

Animación del avión en el cuadro 120, con Weight 50.

Animación del avión en el cuadro 120 con Weight 0, donde el objeto no se anima y por lo tanto, queda en su posición inicial.

Al aplicar el Path Constraint y tener el Dummy del avión seleccionado, notaremos lo siguiente en el panel Path Parameters:

En este panel podremos editar los parámetros referentes al recorrido mismo. Notamos los botones Add Path y Delete Path. Lo interesante de estos botones es que Add Path nos permitirá agregar más recorridos al ya existente e incluso distribuir los pesos en estos, lo cual nos creará un recorrido promedio el cual dependerá de los pesos que establecemos aunque si agregamos un Path, el peso por defecto será de 50. Si en un recorrido colocamos un peso de 100 y el otro en 0, el objeto se vinculará al del recorrido con el peso total. Podremos borrar uno o más recorridos seleccionándolo primeramente en el panel y luego presionando Delete Path.

En el ejemplo, el avión se ha vinculado a dos recorridos lineales rectos mediante Add Path: un recorrido A y otro B los cuales poseen un peso o weight de 50, y la animación final es una recta que a la vez es la bisectriz entre las líneas anguladas que forman cada recorrido.

Path Options nos muestra varias opciones relevantes para mejorar la animación del objeto en nuestro recorrido. Por ejemplo, % Along Path (porcentaje de recorrido) nos permitirá definir la distancia de nuestro recorrido expresada en porcentaje, ya que si dejamos el regulador de tiempo en cualquier cuadro veremos el porcentaje del recorrido total en ese mismo cuadro. Podemos hacer una prueba sencilla simplemente colocándonos en la mitad de la animación (en el ejercicio es el cuadro 500) donde notamos que el valor de % Along Path será de 50 lo cual representa el 50% del recorrido total. Mediante esta opción podremos modificar este valor para adelantar o retrasar la posición del objeto en el recorrido mismo y por ende, alentar o apurar la animación entre un rango de cuadros. Si queremos cambiar este valor en cualquier tramo de un recorrido, debemos activar Auto Key y luego colocar el nuevo porcentaje para apreciar el efecto.

En el ejemplo, se ha establecido un 1% en % Along Path, donde notamos que el avión parte más adelante en el cuadro 0 al iniciar la animación.

Más abajo encontramos las opciones Follow y Bank. Follow nos permitirá seguir el recorrido mediante el punto de pivote del objeto y en el caso de nuestro ejercicio, permitirá que el avión vuele de forma realista si simplemente activamos la casilla.

Al activarla notaremos que si bien el avión vuela, este queda invertido respecto al recorrido. Podremos resolver el problema simplemente presionando la casilla Flip (voltear) que se encuentra en la opción llamada Axis, donde además notamos que el eje está marcado en X. Podemos ir cambiando el eje para apreciar el resultado, ya que esta opción nos permitirá orientar el objeto en todos los ejes para asegurarnos que quede siguiendo al recorrido de forma correcta, como se aprecia en las imágenes siguientes:

Avión con Axis en el eje Y activado, sin Flip.

Avión con Axis en el eje Z activado, sin Flip.

Avión con Axis en el eje X activado, con Flip encendido.

Otras funciones del panel Path Parameters son las siguientes:

Bank: esta interesante opción permitirá al objeto poder ladearse al enfrentar las curvas, lo cual en el caso de nuestro ejercicio activaremos para generar un viraje realista. Podremos aumentar el ángulo de giro al aumentar el valor de Bank Amount. La opción Smoothness nos permitirá controlar la rapidez con la que cambia el ángulo de balanceo a medida que el objeto se mueve a través de la curva en el recorrido. Valores pequeños harán que el objeto responda mejor a los cambios sutiles en la curva, mientras que los valores más grandes suavizarán las sacudidas.

El avión del ejercicio sin Bank  activado.

El avión del ejercicio con Bank activado, donde apreciamos el efecto de este en las curvas.

Allow Upside Down: esta opción nos permitirá invertir el objeto. Esto puede utilizarse en caso que un objeto se voltee cuando realiza un giro en un recorrido vertical ya que al activar esta opción se evita esto.

Constant Velocity: al encenderlo, mantiene la velocidad constante del objeto durante todo el trayecto. Cuando la opción está apagada, la velocidad del objeto dependerá de la distancia entre todos los vértices del recorrido o Path. Por lo tanto, si queremos una animación más realista, lo ideal sería apagar esta opción o modificar los valores de % Along Path donde se quiera modificar la velocidad.

Loop: repite la animación al terminar el recorrido.

Relative: esta opción iniciará la animación no en el recorrido mismo, sino que tomará en cuenta la posición inicial del objeto antes de ser vinculado y el recorrido estará basado en esa posición, aunque igualmente se vincula al Path.

Vínculo al recorrido con la opción Relative desactivada (normal).

Vínculo al recorrido con la opción Relative activada.

Habiendo conocido ya las funciones del panel Path Parameters, procederemos a preparar la animación final de nuestro avión. En el caso del ejercicio, el panel nos deberá quedar con la siguiente configuración:

Ahora todo es cosa de reproducir la animación para ver el resultado final de nuestro ejercicio. El renderizado final de la animación se puede ver en el siguiente vídeo:

b) Animación con varios elementos en un mismo recorrido

Para este segundo ejercicio ocuparemos la misma lógica usada con el avión, pero en este caso vincularemos varios objetos en un mismo recorrido. Para ello, animaremos el tren del ejercicio de jerarquías aunque en este caso se le ha agregado un vagón más y se han dejado los puntos de pivote de los vagones y la locomotora en el centro de cada Dummy. La idea es animar todo el conjunto a través de un recorrido ovalado el cual representará a las vías de nuestro tren. Si abrimos el archivo llamado 3dsmax_animacion_pathconstraint02.max veremos lo siguiente:

Como notamos en el archivo, este es el tren del ejercicio de jerarquías con pequeños cambios y sus respectivas vías en forma de óvalo. Esta vez tenemos dos cámaras que nos ayudarán con el proceso de renderizado: una que irá en el tren mismo (ya vinculada) y otra que nos enfoca la visión general de todo el conjunto, es decir, el tren mismo y todas las vías. Al igual que en el caso del avión, aplicaremos Path constraint de la siguiente forma: seleccionamos el Dummy de la locomotora e iremos a Animation >> Constraints y elegiremos Path Constraint. Notaremos que al aplicarlo, veremos una línea similar a cuando vinculamos los objetos. En este caso, elegiremos el recorrido definido en el centro de las vías y realizamos Click para terminar de asignar el restrictor.

Una vez realizado esto, iremos al Panel de animación y en Path Parameters activaremos la opción Follow y luego Flip. Si presionamos play para ver la animación, notaremos que la locomotora se anima sin mayor problema y por ende, ya podremos animar el resto de los vagones. Sin embargo, si aplicamos Path Constraint en el siguiente vagón nos ocurre lo siguiente:

Como notamos en la secuencia, el tender queda en la misma posición que la locomotora lo cual hará que al animarlo ambos sigan el mismo patrón lo que resultará en una animación irreal, ya que ambos modelos quedan traslapados. El truco para resolver esto está simplemente en tomar el Dummy del tender, ir al Panel de animación y en Path Parameters, modificar el valor de % Along Path. Establecemos el valor -2,33 y luego presionamos enter para ver el resultado:

Como vemos, el vagón se ha colocado justo detrás de la locomotora y con ello al reproducir la animación se nos muestra de forma más real y convincente. Finalizamos la configuración del tender yendo a Path Parameters y activando la opción Follow y luego Flip. Ahora todo es cuestión de vincular el siguiente vagón (el de pasajeros de color Cyan) y establecer el siguiente valor de % Along Path: -4,51.

Notaremos que el vagón de pasajeros queda más bajo que la locomotora y el tender pero eso tiene una solución fácil, ya que este último está en la altura correcta y por ende, lo que debemos hacer es bajar la locomotora y el tender sin tener que mover el Dummy de la jerarquía que tiene aplicado el Constraint. Para hacer esto, bastará tomar la base del tender y de la locomotora y, usando Select and Move, dejar la altura en Z=20,03 (esta es la altura de la base del vagón de pasajeros). Al ser la base del tender y de la locomotora el padre de la jerarquía de ambos objetos, al modificar su altura esto hace que ambos se muevan por completo y por ende, se resuelva el problema. Este proceso puede visualizarse en la secuencia siguiente:

Una vez corregido el problema de las alturas en el tren, seleccionamos el Dummy del vagón de pasajeros y en Path Parameters activamos Follow y Flip. El resultado debe ser el siguiente:

Ahora todo es cuestión de realizar el mismo proceso en el resto de los vagones de pasajeros y en estos casos, los valores de % Along Path son los siguientes:

Vagón 2 (Verde): -6,74.
Vagón 3 (Rosado): -8,97.
Vagón 4 (Naranjo): -11,2.

Activaremos Follow y Flip en el resto de los vagones y si lo hacemos bien, el resultado sería el siguiente:

Ahora todo es cosa de reproducir la animación para ver el resultado final de nuestro ejercicio. El renderizado final de la animación de todo el conjunto se puede ver en el siguiente vídeo:

Y el resultado de toda la animación desde la perspectiva del tren mismo se puede ver en este otro vídeo:

c) Animación de cámaras mediante Path Constraint

En este último ejercicio aplicaremos la misma lógica de los anteriores, pero esta vez animaremos cámaras ya que el archivo es un pequeño proyecto de Arquitectura y por ende, utilizaremos las cámaras como patrón de animación. Si abrimos el archivo llamado 3dsmax_animacion_pathconstraint03.max veremos lo siguiente:

Como se aprecia en la imagen, el archivo corresponde a una casa de dos pisos la cual posee sus correspondientes muros perimetrales y entrada, en un terreno plano y rodeada de varios recorridos o Path. La idea es mostrarlo mediante la animación de cámaras usando los cuatro movimientos de cámara básicos que se suelen utilizar para mostrar un proyecto de Arquitectura. Estos son los siguientes:

1 – La cámara se moverá por el recorrido o path, mientras que el target (objetivo) se mantendrá fijo en un punto y apuntará hacia el o los objetos enfocados. Esto se conoce como giro o recorrido de cámara.

2 – La cámara permanece fija en un punto y sólo el target u objetivo se moverá a través del recorrido o path. Esto se conoce como recorrido panorámico o paneo.

3 – Tanto la cámara como el objetivo se moverán por el mismo recorrido o path. Esto se conoce como cámara libresubjetiva o de primera persona.

4- La cámara y el objetivo se mueven por diferentes recorridos o paths. Esto se conoce como travelling.

Si analizamos el archivo notaremos que también hay varias cámaras las cuales se nombran según cada tipo de movimiento a animar ya que a diferencia de AutoCAD, en 3DSMAX sí tenemos que crear las cámaras ya que deberemos aplicar a cada una un Path Constraint, el cual nos servirá tanto para la cámara misma como también para el Target de esta puesto que ambos son objetos independientes. Una ventaja en particular de 3DSMAX es que podremos ver todas nuestras cámaras en la misma escena y animarlas todas sin mayor problema, ya que aplicaremos el Constaint a cada objeto en particular y no necesitaremos Dummys ni ayudantes extras. Comenzaremos creando el recorrido de cámara seleccionando la cámara llamada Camara Recorrido, aplicamos Path Constraint en ella y finalmente seleccionamos el recorrido circular llamado Recorrido de cámara. El resultado es el siguiente:

Como notamos, la cámara se vincula al recorrido y por ende ya podremos testear la animación mediante Play. En este caso, no debemos modificar el panel de animación ya que el target queda fijo y por ende, sólo se moverá la cámara.

Vista desde la cámara vinculada al recorrido mediante Path Constraint, en el cuadro 195.

Si reproducimos o renderizamos la animación, el resultado es el siguiente:

Un aspecto interesante de cualquier Path es que podremos modificarlo a nuestro gusto aún cuando se haya aplicado Path Constraint lo cual nos permitirá alargar, acortar, modificar o cambiar el punto de inicio (usando Make First) el recorrido según lo necesitemos y por ello, tendrá efecto sobre la animación final. En el caso de ser una forma circular o no ser dibujada mediante líneas (Circle, Rectangle, Star, etc.), podremos aplicar el modificador Edit Spline para editarla.

Edición de Path mediante aumento de radio y mediante el modificador Edit Spline, y su efecto en la vista de cámara del recorrido.

Ahora haremos el recorrido de tipo Panorámico. Para ello, animaremos la cámara llamada Cámara Panorámica, pero en este caso sólo animaremos el Target de esta. Por ello, lo seleccionamos y aplicamos Path Constraint en el recorrido curvo llamado Recorrido panorámico. El resultado es el siguiente:

Como notamos, el target se vincula al recorrido y por ende ya podremos testear la animación mediante Play. En este caso, no debemos modificar el panel de animación ya que la cámara queda fija y por ende, sólo se moverá el target el cual sigue de manera automática al recorrido. Si reproducimos o renderizamos la animación, el resultado es el siguiente:

El siguiente recorrido que realizaremos será el de tipo subjetivo. Para ello, seleccionamos la cámara llamada Cámara subjetiva ya que esta es de tipo Free o libre (es decir, sin target), lo que implica que siempre apuntará hacia adelante. Aplicamos el Path Constraint y la vinculamos al recorrido llamado Recorrido subjetivo. El resultado es el siguiente:

Como notamos, la cámara se vincula al recorrido y por ende, ya podremos testear la animación mediante Play. En este caso, sí debemos activar Follow en Path Parameters para que la cámara siga al recorrido y se nos muestre la perspectiva de primera persona. Sin embargo, notaremos que esta se invierte hacia la izquierda así que solucionaremos esto cambiando en Axis el eje X a Y:

Si reproducimos o renderizamos la animación, el resultado es el siguiente:

Ahora sólo nos queda realizar el Travelling de cámara, y para eso debemos hacer dos Path Constraints: en el primero seleccionamos la cámara llamada Camara travelling y la vinculamos al recorrido llamado Recorrido Travelling cámara. Luego realizaremos el segundo seleccionando el Target de la cámara y lo vinculamos al recorrido llamado Recorrido Travelling target. el resultado es el siguiente:

Vinculando la cámara al primer recorrido.

Vinculando el target de la cámara al segundo recorrido.

Como notamos, la cámara se vincula al primer recorrido y el target de esta al segundo, y por ende ya podremos testear la animación mediante Play. En este caso, no debemos modificar el panel de animación ya que la cámara y su target se desplazan por distintos recorridos y por ende, lo siguen automáticamente. Si reproducimos o renderizamos la animación, el resultado es el siguiente:

Como hemos visto en todos los ejercicios anteriores, Uno de los Restrictores más importantes usados en la animación en 3DSMAX es Path Constraint ya que su uso no solamente se enfoca a la Arquitectura y la animación de cámaras, sino que también se utiliza en el ámbito de la animación 3D. Este nos permitirá mostrar a cabalidad un proyecto, modelo o espacio ya que además de generar la animación respectiva podremos modificar los vértices de nuestros Path para subir de pisos o niveles, o alentar el recorrido para dar énfasis en ciertos espacios o aspectos.

Este es el fin de este tutorial.

Actualizaciones recientes al blog: animación en 3DSMAX

Estimados visitantes, después de mucho tiempo sin postear una actualización debido a varios factores (uno de ellos es que fui padre hace poco tiempo), esta vez aprovecho de anunciar las siguientes actualizaciones importantes hechas a MVBlog:

– Hacía un tiempo atrás se reestructuraron los menús laterales del diseño de la web y además, se ha agregado una encuesta nueva en relación a la posibilidad de publicar libros respecto a los temas tratados en este sitio web.

– Se arreglan los widgets laterales de 3DSMAX y Rhinoceros, ya que se veían Tutoriales de AutoCAD en lugar de los respectivos.

– En el caso del Tutorial 10 de animación básica de 3DSMAX, después de revisarlo exhaustivamente he decidido reestructurarlo ya que el original tenía varias falencias y por ello, se separarán los temas de animación en 3DSMAX en varios tutoriales, porque la idea es que estos sean mucho más completos y se incorporen nuevos ejercicios y archivos. Por el momento se han publicados dos tutoriales sobre este tema: introducción y conceptos básicos y jerarquías entre objetos. Pueden verlos yendo a los enlaces respectivos o en la sección Tutoriales 3DSMAX.

También se están reparando algunos errores en los archivos y por ello, se está constantemente actualizando la web a pesar de no poder escribir posteos de forma regular. Como siempre, les agradezco sus visitas y el apoyo dado a este sitio.

Saludos cordiales y hasta la siguiente actualización.

3DSMAX Tutorial 10b: Animación en 3DSMAX, Cinemática Directa o Jerarquías entre objetos

En el mundo real, los movimientos o rotaciones de muchos objetos dependen de otros a los que están subordinados o subyugados. Por ejemplo, si vemos las ruedas de un auto notaremos que estas giran gracias a la rotación del eje a la que están unidas y a su vez, este eje puede rotar gracias a su conexión con el motor el cual también está relacionado o vinculado con sus respectivas piezas como por ejemplo, los pistones y el cigueñal. Esta relación de dependencia se conoce como Jerarquía o Cinemática Directa, y su uso en animación es vital pues nos permite animar objetos compuestos o establecer relaciones de dependencia cercanas a la realidad. En 3DSMAX, una jerarquía es una cadena de objetos vinculados entre sí que contienen una relación ascendiente/descendiente. Esto quiere decir que existe un “objeto padre” que es el que manda en la relación y un “objeto hijo” que está subordinado a este lo que implica que si el objeto padre se transforma, lo hará también el objeto hijo. Al igual que en el mundo real, un objeto padre puede tener muchos “objetos hijos” pero los objetos hijos no pueden tener más de un solo “padre”. En este tutorial aprenderemos conceptos y principios básicos sobre jerarquías entre objetos o Cinemática directa, y su importancia en el proceso de Rigging y animación propiamente tales.

Para la correcta realización de este tutorial, en la página de descargas de los archivos de tutoriales 3D está el archivo base llamado 3dsmax_animacion_jerarquias.max.

Jerarquías en 3DSMAX

En 3DSMAX podemos crear jerarquías de forma más o menos sencilla gracias al grupo de botones Select and Link, los cuales se encuentran en la parte superior izquierda de la interfaz del programa:

Estos nos permitirán crear una jerarquía o relación de vínculo entre dos o más objetos. De izquierda a derecha, primer botón es precisamente Select and Link el cual creará la jerarquía mientras que el segundo es Unlink Selection, el cual nos servirá para deshacerla. El último botón es Blind to Space Warp o lo que es lo mismo, vincular a un efecto especial. Este último botón solamente se puede usar junto con las Space Warp o efectos especiales.

Si queremos crear una relación jerárquica en 3DSMAX, debemos tener en cuenta que por norma básica siempre será el objeto “hijo” el que se vinculará directamente al “padre”. Por lo tanto, al formar la relación debemos asegurarnos de elegir siempre el objeto que será el futuro “hijo”. Para crear la jerarquía bastará con seleccionar el objeto a vincular, seleccionar Select and Link y con el botón del mouse presionado, elegiremos el objeto padre (el cursor cambiará a dos cuadros entrelazados). Este último se resaltará y con ello ya hemos creado la relación.

Sin embargo y antes de proceder con el tutorial mismo, debemos conocer los dos modos que tenemos para generar relaciones de jerarquía en 3DSMAX. Estos son los siguientes:

1) Relación directa de el o los hijos a un solo padre: en este caso todos los objetos hijos se vinculan a un solo gran objeto padre, el cual es el que domina toda la jerarquía. Los objetos hijos no tienen relación entre sí, sino que cada uno se puede transformar de manera independiente pero se subyuga solamente al objeto padre.

Esta relación puede ejemplificarse a partir de la siguiente secuencia:

Realización de la jerarquía.

Relación directa entre objetos. El objeto verde es el padre y al transformarse este todos los hijos lo siguen, pero estos se pueden transformar de manera independiente a la del padre.

2) Relación en cadena: consiste en una descendencia directa entre el objeto padre y el objeto hijo, pero este último también pasa a ser padre de otro u otros objetos que se le vinculen, de forma similar a la vida real. En este caso, el último objeto de la jerarquía podrá transformarse de forma independiente pero se subyugará a su propio padre, el cual a la vez se subyugará a otro objeto padre y así sucesivamente, hasta llegar al objeto padre de toda la jerarquía.

Esta relación puede ejemplificarse a partir de la siguiente secuencia:

Realización de la jerarquía.

Relación en cadena entre objetos. El objeto verde es el padre y al transformarse este todos los hijos lo siguen, pero estos a su vez son padres de los que se le relacionen y al transformarse, los hijos se subyugan a estos mientras que el último objeto (el Azul) es el único que se puede transformar de manera independiente respecto de su objeto padre (objeto amarillo). Esta relación jerárquica es la base para el sistema de Bones o huesos de 3DSMAX.

Demás está decir que se pueden generar las descendencias que queramos y también podremos combinar ambos métodos para generar sistemas jerárquicos más complejos y por ende, preparar nuestros objetos para ser animados. Dominar las jerarquías es clave ya que es la base del Rigging (configuración para animación) de personajes o de objetos, ya que podremos establecer las relaciones entre los diferentes objetos de manera realista y de esta manera tener un personaje u objeto “listo” para ser animado constantemente en cada escena. También podremos animar o transformar modelos compuestos como por ejemplo, una puerta y sus respectivas manillas ya que ambos elementos se deben modelar aparte. En este caso, la jerarquía hace posible que estas se mantengan relacionadas ya que la manilla sería el objeto hijo mientras que la puerta sería el objeto padre. Si la jerarquía no existiera, al abrir la puerta la manilla simplemente flotaría en el aire.

Este último ejemplo puede apreciarse en la imagen siguiente:

En el ejemplo se han modelado dos puertas y a la de la derecha se le ha vinculado la manilla como objeto hijo a la puerta misma mediante jerarquía, lo que hace posible la interacción real de la manilla con la puerta al abrirse esta.

Para ejercitarnos en el tema de las jerarquías utilizaremos el archivo del tutorial 01 (el tren de juguete), pero en este caso le agregaremos unos carros para mostrar los dos tipos base de enlaces que tenemos en 3DSMAX y además formar una relación jerárquica compleja que nos permitiría en un futuro animar el tren en un futuro. También conoceremos al ayudante llamado Dummy, el cual nos ayudará a definir controladores para la jerarquía y facilitar el proceso de rigging.

Al abrir el archivo llamado 3dsmax_animacion_jerarquias.max, nos aparece la siguiente escena:

Como apreciamos, es el mismo tren del tutorial 01 pero que ha sufrido algunas modificaciones ya que se le ha cambiado la cabina y además se han agregado más vagones para generar el tren completo. Sin embargo, si tomamos la cabina o cualquier otra pieza del tren y la movemos, notaremos que estas no están relacionadas con el total ya que se manejan de forma independiente, lo cual ocurre por defecto al modelar varios objetos en 3DSMAX:

Para resolver el problema podríamos agrupar la locomotora y los vagones mediante Group, pero sin embargo esto no nos serviría para animar ya que no podríamos mover las ruedas puesto que el grupo siempre se comporta como un solo objeto. Por esto mismo, debemos establecer relaciones de jerarquía para poder animar correctamente cada elemento y además para facilitar la transformación del conjunto completo sin tener que seleccionar objeto por objeto. Lo primero que haremos será esquematizar las relaciones entre los objetos para facilitar la labor. En el caso de la locomotora, debiéramos realizar el siguiente esquema de enlazado:

Si bien a primera vista el esquema parece complejo la verdad es que no lo es, ya que los elementos más cercanos a la base de la locomotora estarán vinculados directamente a ella. En el caso de las ruedas, estas deberán estar relacionadas a sus respectivos ejes para que puedan ser giradas en un futuro, y los ejes mismos estarán vinculados a la base. Las chimeneas superiores se relacionan directamente con la caldera y el techo de la cabina se relaciona con esta última, la cual a su vez se enlazará a la base al igual que la caldera. En el caso de los topes y los pistones, estos últimos se vinculan de forma directa a la base y los topes mismos se vinculan a la base, vinculando previamente ambas piezas. Si observamos un poco más a fondo el esquema, notaremos que también se podría haber vinculado la caldera a la cabina o viceversa, lo cual nos indica que hay más de una forma de resolver las jerarquías entre objetos. Otra cosa que notamos es que si bien la base de la locomotora es el “padre” de toda la jerarquía, por un tema práctico NUNCA se tomará directamente. En este caso, lo mejor será vincular la base misma a un objeto ficticio llamado “Dummy”, el cual nos permitirá poder tomar el conjunto completo y poder transformarlo ya sea moviéndolo, rotándolo o escalándolo. A este, en un futuro, también se le podrán aplicar restrictores y otras funciones de animación.

El ayudante Dummy

Este es uno de los ayudantes que nos provee 3DSMAX y es de los más importantes, puesto que nos facilita enormemente las tareas de Rigging o configuración de objetos o personajes a animar ya que este es un cubo virtual “sin parámetros”, el cual puede alinearse con cualquier objeto y al que se le pueden aplicar transformaciones y comandos de animación. La gran ventaja del Dummy es que nos permitirá poder tomar la jerarquía completa sin tener que tomar el objeto principal y así evitar confusiones, además que recibe de mejor manera las transformaciones y restrictores de animación que se le apliquen y se evitan errores ya que si se vinculan formas 3D puras, hay riesgo que estas no se animen de forma correcta debido a la naturaleza misma de las mallas 3D.

Podemos encontrar a Dummy en la persiana Helpers de la barra de comandos de 3DSMAX, indicados en la imagen:

Si presionamos el botón Dummy y lo dibujamos en el espacio de trabajo, este se realizará de igual forma que una esfera y notamos que se nos crea un cubo virtual de color verde, el cual literalmente no tiene parámetros editables si lo seleccionamos y luego vemos el panel modificar, puesto que solamente podremos modificar el nombre del objeto.

Volviendo a nuestro archivo, una vez que lo definimos lo mejor será alinear el Dummy dibujado respecto a la base de la locomotora mediante la herramienta Align. Lo alineamos respecto a la base en los ejes X, Y y Z tomando como puntos de contacto los Pivot Point de ambos y aceptamos. Con esto ya estamos listos para proceder con la jerarquía.

Comenzaremos la jerarquización relacionando las chimeneas superiores a la caldera mediante una relación directa. Si queremos seleccionar más de un objeto, debemos presionar y mantener la tecla CTRL. El resultado debe verse con en la imagen siguiente:

Si lo hacemos correctamente, la caldera se resaltará y la jerarquía estará realizada.

Tips: podremos comprobar la jerarquización correcta de los elementos si presionamos las teclas Re Pag y Av Pag, ya que Re Pag nos selecciona los objetos padre y Av Pag los objetos hijo, siembre y cuando seleccionemos cualquier objeto que esté dentro de la jerarquía (esto vale para cualquier jerarquía que realicemos). Si por el contrario, nos equivocamos y queremos eliminar una jerarquía entre dos objetos, simplemente seleccionamos el objeto a desvincular y presionamos el botón Unlink Selection.

Otra forma de verificar que la jerarquía está realizada es simplemente mover la caldera y luego deshacer el movimiento mediante CTRL+Z, tal como se aprecia en la imagen siguiente:

Una vez hecho esto, lo siguiente es vincular el techo a la cabina mediante una relación directa, y luego tomar la caldera y la cabina para vincularla a la base en una nueva relación directa, tal como se aprecia en la secuencia siguiente:

Si observamos la jerarquía recién realizada, notaremos que se ha formado una relación en cadena en los objetos techo, cabina y base. Ahora vincularemos los pistones laterales a la base misma, tal como se aprecia en la imagen:

Ahora debemos vincular los topes a la base. Para ello, primeramente crearemos una relación directa entre el tope y su soporte de tal forma que este último sea el padre de la jerarquía, y una vez finalizado repetiremos el proceso con el otro tope, tal como se aprecia en las imágenes siguientes:

Finalizamos la relación vinculando ambos soportes a la base de la locomotora:

Finalizaremos las jerarquías base de la locomotora vinculando el enganche a la base de la misma.

Ahora solamente nos faltarían las jerarquías de las ruedas lo cual es bastante sencillo ya que, en este caso, colocaremos la vista Bottom (B) y procederemos a vincular las ruedas traseras a su eje. Repetiremos el proceso con las ruedas restantes para finalizar la jerarquía.

Estando en la misma vista, procederemos a seleccionar todos los ejes y los vinculamos a la base de la locomotora mediante una relación directa, y con esto hemos terminado todas las jerarquías base del modelo 3D de nuestra locomotora.

Volvemos a colocar la locomotora en Perspective y realizamos una última prueba para revisar las jerarquías mediante Re Pag y Av Pag. Finalmente, vinculamos la base de la locomotora al Dummy para finalizar de manera definitiva el Rigging base de nuestro modelo:

Si tomamos el Dummy y le aplicamos alguna transformación como mover, rotar o escalar, notaremos que la locomotora completa se subyuga a este ya que este es el padre de toda la jerarquía. Como dijimos antes, por un tema práctico siempre es recomendable que cualquier objeto compuesto esté bajo el yugo de un Dummy, ya que esto nos evita tener que buscar el objeto padre de nuestro modelo al querer animarlo o transformarlo.

Rotando y escalando la locomotora mediante la transformación respectiva, aplicada al Dummy el cual es el padre de la jerarquía.

Para el caso de los vagones seguiremos exactamente la misma lógica que en el esquema de la locomotora, sólo que su parte superior será mucho más sencilla de resolver puesto que en el caso del tender, nos bastará enlazar la tapa a la cisterna y esta a la base mientras que en el caso de los vagones de pasajeros, enlazaremos el techo a la cabina de pasajeros y luego la cabina será vinculada a la base de cada carro. Como en el caso de la locomotora, colocaremos un Dummy a cada elemento para que este pueda ser transformado sin mayor problema.

En las imágenes siguientes vemos las relaciones padre-hijo del tender del tren:

La solución del final de todo el sistema sería la de la siguiente imagen:

Como hemos visto se ha creado un sistema de jerarquías el cual aún no está terminado del todo, ya que lo que nos queda será hacer tal vez lo más interesante de todo: generar los enganches y girar los vagones de manera realista. Para ello, primeramente en la vista Top moveremos un poco cada carro de modo que el enganche quede dentro del aro para generar el efecto de enganche, tal como se aprecia en la imagen siguiente:

Una vez realizado lo anterior, realizamos una jerarquía mediante una relación directa entre todos los Dummys, partiendo desde el Dummy del último vagón hasta el Dummy de la locomotora, tal como se indica en el siguiente esquema:

Con esto, el Dummy de la locomotora se convierte en el padre de toda la jerarquía y nos permitirá mover el tren completo con sólo seleccionarlo. Lo único que nos falta ahora es establecer un nuevo punto de “pivote” para los vagones, ya que si tomamos los Dummys de cada uno estos no girarán de manera realista ya que tomará el centro de este en lugar del punto del enganche, tal como lo haría un tren real. Para resolver esto, conoceremos y aplicaremos las funciones de la persiana llamada Hierarchy.

Tip: si hacemos doble click en el padre de toda una jerarquía, automáticamente se seleccionarán todos los elementos de esta.

Hierarchy

Una función importante de la que disponemos en el tema de las jerarquías es el panel llamado Hierarchy (que significa precisamente “jerarquía”), en donde podremos editar los puntos de relaciones base de cualquier objeto o de una jerarquía ya realizada. Esto es importante si queremos, por ejemplo, cambiar el punto de pivote de una primitiva ya que esta por defecto posee un punto de “pivote” o giro predefinido (por ejemplo, si queremos establecer el punto de giro de una puerta debiéramos cambiar el punto de pivote del box que la define a una esquina) o también modificar la transformación del objeto mismo sin afectar su punto de pivote. El panel Hierarchy es el siguiente:

Este panel tiene cinco botones importantes que tienen que ver con la edición del pivote los cuales son:

1) Affect Pivot Only (afectar solamente al pivote): activando esta opción podremos desvincular el punto de “pivote” predeterminado de un objeto, lo cual nos permitirá independizarlo de este y por ende, colocarlo en cualquier posición. Si lo desactivamos, al pivote se vuelve a vincular al objeto pero el primero queda en su nueva posición.

En el ejemplo, se ha cambiado de posición el punto de pivote del Dummy de la locomotora mediante Affect Pivot Only.

2) Affect Object Only (afectar solamente al objeto): activando esta opción podremos desvincular el objeto mismo de su punto de “pivote”, el cual se mantendrá en su posición original. Si lo desactivamos, el objeto se vuelve a vincular al pivote pero el primero queda en su nueva posición.

En el ejemplo, se ha cambiado de posición el Dummy de la locomotora mediante Affect Object Only.

3) Affect Hierarchy Only (afectar solamente a la jerarquía): si activamos esta opción, podremos transformar toda la relación jerárquica de ese objeto sin afectar su punto de pivote ni al objeto en sí, siempre y cuando se realice mediante las transformaciones Move y Scale ya que en estos casos, las relaciones jerárquicas rotarán o se escalarán según la transformación que se utilice.

Rotando la relación jerárquica del Dummy de la locomotora mediante Affect Hierarchy Only.

Escalando la relación jerárquica del Dummy de la locomotora mediante Affect Hierarchy Only.

4) Alignment (alineación): estas opciones funcionan sólo si activamos Affect Pivot Only o Affect Object Only, y alinearán el pivote o el objeto según las siguientes opciones:

– Center to Pivot/Object: sólo funciona si aplicamos la transformación Move, y centra el objeto o pivote respecto del pivote u objeto según corresponda.

– Align to Pivot/Object: sólo funciona si aplicamos la transformación Rotate, y alinea la orientación del pivote u objeto respecto a las coordenadas locales X, Y y Z del objeto o pivote según corresponda.

– Align to World: sólo funciona si aplicamos la transformación Rotate, y siempre alinea la orientación del pivote u objeto respecto a las coordenadas universales X, Y y Z del espacio de trabajo, también conocido como World o “mundo”.

5) Reset Pivot (resetear pivote): vuelve el punto de pivote a su posición por defecto respecto del objeto. Si rotamos el objeto mediante Affect Object Only y lo activamos, tomará por base las coordenadas locales X, Y y Z del objeto, tal como se aprecia en el ejemplo de abajo:

Ya habiendo conocido las opciones de Hierarchy, volvemos al ejercicio y lo que haremos será justamente cambiar el punto de pivote del Dummy de cada vagón para colocarlo en el enganche correspondiente. Lo que haremos será entonces será seleccionar el Dummy del vagón de tender, luego iremos a Hierarchy, activamos Affect Pivot Only (1), y finalmente alinearemos el pivote respecto del aro de enganche mediante Align (2) tomando Pivot Point como base de alineación, tal como se aprecia en la imagen:

Una vez hecho esto y SIN desactivar Affect Pivot Only, movemos un poco en el eje X el punto de pivote para centrarlo en el aro y terminar de manera definitiva la configuración. Esto se realizará a ojo (podemos ayudarnos con la vista Top si tenemos problemas).

Repetiremos todo lo anterior en el resto de los vagones, desactivamos Affect Pivot Only y con esto ya queda listo nuestro tren. Podemos probarlo simplemente tomando el Dummy de la locomotora y transformándolo mediante Move para observar toda la jerarquía, y girar cada vagón para notar que el punto de pivote ahora se coloca en torno al enganche, de forma similar a un tren real.

Por último, si queremos visualizar todas las relaciones jerárquicas de nuestros objetos, podemos abrir el panel llamado Schematic View el cual nos permite ver el esquema de estas y se encuentra en la parte superior de 3DSMAX, de acuerdo con la imagen siguiente:

Schematic View abierto.

Un acercamiento a Schematic View, donde vemos el esquema de todas las relaciones del ejercicio anterior.

En este ejercicio hemos visto conceptos relacionados con la configuración de animación ya que lo que hemos realizado es un primer Rigging básico que nos servirá para controlar los diferentes objetos de la escena y con ello facilitar el proceso de animación. En el caso del tren, podremos colocar sus vagones en diferentes posiciones o mover el tren completo si es necesario y con mucha práctica, podremos realizar giros del conjunto completo. Sin embargo, si queremos animar el tren de manera que recorra un circuito de forma continua, debemos hacerlo mediante un Constraint de animación el cual se estudiará en el siguiente tutorial, y de paso veremos animación aplicada a la Arquitectura ya que el mismo Constraint será utilizado para ello.

Este es el fin de este tutorial.

Agregada parte 2 del tutorial de Textos en AutoCAD 2D y fin de Semestre

Después de un tiempo vuelvo a actualizar el sitio web y por ello, cumplo con anunciar la adición de la parte 2 del tutorial de textos en AutoCAD 2D: se trata de los Textos Multiline en AutoCAD. Con esto se completan ambos tutoriales y se paga una deuda que hace tiempo estaba pendiente en este blog. como siempre, el tutorial también puede ser visto en la sección correspondiente a Tutoriales AutoCAD.

Otra cosa es que se nos termina el Semestre y por ello, comienzan las vacaciones de invierno. Finalmente, no me queda más que agradecer mucho sus visitas y el apoyo dado a MVBlog.

Saludos cordiales y hasta la próxima actualización,

AutoCAD 2D Tutorial 13: textos en AutoCAD parte 2, texto Multiline

En este nuevo tutorial de AutoCAD veremos una materia que extrañamente no se había publicado anteriormente en el blog, pero que resulta fundamental para el correcto dibujo de planimetrías en Arquitectura: se trata de los textos en AutoCAD, los cuales nos permitirán definir los diferentes componentes escritos que forman un plano ya sea símbolos y valores de ejes, nombres de recintos, nombres de planos y otros textos complementarios al proyecto que dibujemos. En esta segunda parte del tutorial veremos los comandos asociados a los textos complejos o también llamados Multiline. También se verá la relación de estos con los estilos y con otras funciones complementarias.

Definición de Textos Multiline en AutocAD

Como ya lo estudiamos en la primera parte del tutorial de textos, en AutoCAD disponemos de dos tipos base los cuales son:

1) El Single Line o Text.

2) El Multiline Text o Mtext.

Multiline es el texto más moderno de AutoCAD y por ello es el que posee más funciones asociadas a la edición de texto, ya que al invocarlo podremos editar el texto de forma parecida a procesadores de texto como Word. Como ya sabemos, ambas funciones de texto las podemos encontrar en la persiana principal (Home), en el grupo llamado Annotation:

Si hacemos click en la flecha que está debajo de la letra “A” de la opción Text, podremos acceder a ambos tipos de texto:

En el caso del texto de tipo Multiline, este se encuentra por defecto y en este tutorial nos referiremos específicamente a este y a todas sus funciones.

Texto Multiline

El texto complejo o de varias líneas (Multiline) es la versión moderna de inserción y edición de textos del programa y por ello funcionará exclusivamente mediante el comando MTEXT y luego enter, mediante la letra T y luego enter o también presionando el icono de Multiline Text. En este caso, si invocamos el comando para colocar un texto nos aparecerá lo siguiente en la barra de comandos:

Como notamos en la imagen, el programa nos pedirá el punto de inserción o de inicio en el cual comenzará a escribirse nuestro texto pero a diferencia de Single Line, en este caso debemos definir un área o rectángulo en el cual se definirá nuestro texto. Por ello, si hacemos click para definir el primer punto, el programa nos pedirá especificar la otra “esquina” del texto, tal como se muestra en la imagen siguiente:

Con esto definiremos el ancho de nuestro cuadro de edición de texto y nos aparecerá lo siguiente en el área de trabajo:

Si comenzamos a escribir un texto cualquiera, notaremos que en la parte superior nos aparece un menú similar a los de algunos comandos ya vistos como Array o Block, ya que este nos permitirá ajustar o editar el texto mismo. Este menú se conoce como Text Editor:

Este menú posee funciones muy similares a un procesador de texto (como Word) y por ello podremos editar del texto de manera similar. Sin embargo, debemos tomar en cuenta que para que estos cambios se realicen de forma efectiva debemos seleccionar previamente el o los textos que están dentro del área del Mtext mediante el arrastre del mouse, tal como se aprecia en la siguiente secuencia:

Texto sin seleccionar.

Texto seleccionado mediante el arrastre con el mouse.

Las funciones principales de este menú son las siguientes:

A) Grupo Style:

Este grupo contiene los estilos de texto que hayamos creado y que están relacionados con Single Line ya que al igual que este último, el texto Multiline también dependerá de los estilos en uso aunque en este caso sí podremos editar el texto de manera independiente de este. Si clickeamos la flecha inferior derecha accederemos a los diferentes estilos de texto disponibles y podremos aplicárselo a nuestro texto.

Por esto mismo, si escribimos nuestro texto por defecto el estilo aplicado será Standard, pero podremos cambiarlo al que hemos creado y mantendrá todas sus cualidades como tamaño, tipo de letra o algún efecto especial que agreguemos.

Las opciones extras que disponemos en este grupo son:

1- Annotative: esta opción definirá si el texto es anotativo o no, de forma similar a lo ya visto en Single Line.

2- Cuadro de tamaño de texto o Text Height: esta opción cambia el tamaño o altura del texto según el valor que definamos. Si hemos elegido un estilo previamente creado, por defecto nos mostrará el tamaño definido por este. Una ventaja del texto Multiline es que podremos cambiar el tamaño de nuestro texto en cualquier momento, independiente del del estilo de texto que tengamos definido por defecto.

En el ejemplo se ha cambiado el tamaño del texto de 12 a 18 mediante Text Height.

3- Mask Text: esta interesantísima opción nos permitirá enmarcar nuestro texto con un fondo o máscara ya que al activarlo, nos aparecerá el siguiente cuadro llamado Background Mask:

En este podremos activar el uso o no de la máscara marcando la casilla Use Background Mask, definir la distancia de Border offset o cuánto margen tenemos desde el texto, y el color del fondo mediante la opción Fill Color. En este último caso, podremos elegir un color cualquiera o incluso, podremos utilizar el color del área de trabajo como máscara al activar la opción Use drawing background color.

En el ejemplo se ha colocado un fondo rojo con el Border Offset predefinido 1.5000 mediante Mask Text.

B) Grupo Formatting:

Este grupo contiene las funciones relativas al formato del texto mismo, ya que podremos elegir los efectos clásicos de este como el tipo, estilo de fuente y otros efectos específicos. Las funciones de este grupo son las siguientes:

1- Match: si tenemos seleccionado un texto con un tipo y estilo ya definidos, al seleccionar esta opción podremos cambiar todos los textos del Mtext a este mediante un solo click a cada texto.

2- Font style: podremos definir un estilo para cada tipo de texto mediante los efectos de Negrita, cursiva, tachado, Subrayado, Subrayado superior o Fracción. En este último caso, podremos activarlo si tenemos nuestras letras y el símbolo “/” en medio (LETRA/LETRA).

En el ejemplo se han colocado los estilos subrayado superior, cursiva, subrayado y negrita respectivamente.

Una función interesante de Font Style es Stack ya que esta nos permitirá representar una fracción de forma matemática (texto arrida, división y texto abajo), siempre y cuando tengamos dos textos mediados mediante el carácter slash (“/”) y previamente seleccionados, tal como se aprecia en la secuencia siguiente:

3- Name Text: aquí podremos definir el tipo de fuente o nombre de texto, independiente del estilo que hayamos definido previamente. El tipo de fuente se le puede cambiar a cualquier letra y así generar varios tipos en un solo texto.

En el ejemplo, el tipo de texto de la primera línea es Century Gothic mientras que el de abajo es Chiller, gracias a Name Text.

El mismo ejemplo anterior pero en este caso se han mezclado varios tipos de texto en la línea de abajo, gracias a Name Text.

4- Color/Layer text: en esta opción podremos definir el color del texto o el layer al que este pertenece, de forma similar a como lo hacemos con las propiedades. El color de fuente se le puede aplicar a cualquier letra y así generar varios de ellos en un solo texto.

En el ejemplo, el color de texto de la primera línea es blanco mientras que el de abajo es rojo, gracias a Color/Layer Text.

El mismo ejemplo anterior pero en este caso se han mezclado varios colores en la línea de abajo, gracias a Color/Layer Text.

5- Superscript/Subscript: determina si el texto es de tipo Superíndice (Ejemplo: cuadrado o cubo) o Subíndice (ejemplo: elemento químico).

6- Uppercase/Lowercase: esta opción nos permitirá cambiar nuestro texto entre mayúsculas (Uppercase) y minúsculas (Lowercase). Esto se aplicará siempre a la selección de textos que realicemos con el mouse.

7- Clear: esta opción nos permitirá borrar el formato del texto (Remove Character Formatting), el formato del párrafo (Remove Paragraph Formatting) o ambos (Remove All Formatting).

Si presionamos la flecha inferior del grupo Formatting, podremos acceder a funciones extras de este grupo las cuales son:

1- Oblique Angle: mediante esta opción podremos indicar el ángulo en que se deforma el texto. Si el valor es positivo la deformación será hacia la derecha, y si es negativo será hacia la izquierda.

2- Tracking: mediante esta opción podremos indicar la distancia de separación entre las letras que componen el texto. Mientras mayor sea el valor la distancia entre las letras será más grande y si es menor que 1, será más pequeña hasta pegarse.

3- Width Factor: mediante esta opción podremos indicar el ancho del texto. Mientras mayor sea el valor el texto será mucho más ancho y si es menor que 1, el texto tenderá a comprimirse.

C) Grupo Paragraph:

Este grupo contiene las funciones relativas a la distribución y otros formatos específicos del texto mismo, ya que podremos elegir la alineación de este o la numeración. Las funciones de este grupo son las siguientes:

1- Justification: esta opción es similar a Single Line ya que podremos determinar la posición del texto respecto de la caja que lo contiene, y tenemos las siguientes posiciones: Top Left, Top Center, Top right, Middle Left, Middle Center, Middle Right, Bottom Left, Bottom Center y finalmente Bottom Right.

2- Bullets and Numbering: en esta opción podremos establecer un sistema de numeración mediante viñetas, letras o números según elijamos. Si presionamos este botón nos aparece el siguiente menú:

En este podremos elegir si queremos que el sistema sea numerado (Numbered), por letras (Lettered) o mediante puntos (Bulleted). Es interesante apreciar que si elegimos Lettered, podremos establecer letras mayúsculas (Uppercase) o minúsculas (Lowercase) para los listados de palabras. También podremos determinar si queremos que el sistema se cree de manera automática mediante la opción Allow auto Bullets and Numbering, o permitir listas y puntos mediante la opción Alow Bullets and Lists.

Numeración mediante números utilizando la función Numbered.

Numeración mediante letras mayúsculas utilizando la función Lettered >> Uppercase.

Numeración mediante puntos utilizando la función Bulleted.

3- Line spacing: en esta opción podremos determinar el espacio entre cada línea de texto. Por defecto es 1x pero también tenemos 1.5x, 2.0x y 2.5x. Además podremos aumentar el espaciado mediante la opción more… En este último caso, podremos crear espacios personalizados gracias al siguiente menú de opciones llamado Paragraph:

En este podremos determinar el espaciado y asignar un número al tabulador de forma similar a un procesador de texto, gracias a la opción Tab. También podremos modificar los parámetros de sangría del texto mediante Left y Right Indent, alinear el párrafo y determinar el espaciado mediante Paragraph Alignment y Paragraph Spacing respectivamente, y finalmente asignar el espacio mediante la opción Paragraph Line Spacing.

Texto espaciado a 2.0x utilizando Line Spacing.

Texto espaciado de manera personalizada utilizando el cuadro Paragraph de Line Spacing.

4- Text Alignment: en estos paneles se determina la alineación del texto, de forma similar a un procesador de texto. En este caso tenemos las siguientes alineaciones:

1) Default (por defecto).
2) Left (izquierda).
3) Center (centro).
4) Right (derecha).
5) Justify (justificado).
6) Distribute (distribuir).

Esto puede verse de forma más clara en el ejemplo siguiente:

Texto alineado en torno al centro utilizando Center de Text Alignment.

El caso de la opción Distribute es bastante interesante pues al activarlo, nos distribuirá cada línea de texto de forma homogénea por todo el ancho del cuadro, tal como se aprecia en la imagen siguiente:

Texto distribuido en torno al cuadro utilizando Distribute de Text Alignment.

5- Combine Paragraphs: esta opción nos aparece al presionar la flecha inferior derecha del grupo, y nos permitirá combinar todos los textos seleccionados que estén en distintos párrafos en uno solo, si tenemos suficiente espacio lateral en el cuadro de edición de texto.

D) Grupo Insert:

Este grupo contiene las funciones relativas a la inserción de elementos complementarios al texto o la distribución de columnas del cuadrio de edición y del texto mismo. Las funciones de este grupo son las siguientes:

1- Columns: mediante esta opción podremos determinar la cantidad de columnas que necesitemos para el cuadro de edición, de forma similar a un procesador de texto. Las opciones de columnas que disponemos son las siguientes:

– No Columns: no inserta columnas en nuestro cuadro de edición.

– Dynamic Columns: esta es la opción por defecto, y podremos definir la altura de la columna de forma manual (Manual Height) o de forma automática (Auto Height). Si seleccionamos la opción Auto Height, al finalizar una línea automáticamente nos creará una nueva columna, tal como se aprecia en la siguiente imagen:

Ajustando cantidad y altura de las columnas mediante Auto Height.

Si dejamos la opción por defecto Manual Height, podremos modificar las columnas simplemente tomando el extremo inferior derecho del cuadro de edición de texto (marcado en verde) y moviéndolo con el mouse para definir cantidad y altura de columnas.

Ajustando cantidad y altura de las columnas mediante Manual Height.

– Static Columns: especifica la cantidad de columnas para nuestro cuadro de texto. Por defecto puede definir de 2 a 6 columnas, pero podemos agregar más en la opción More.

La opción More… también es el cuadro de Column Settings, ya que en este podremos definir tanto el tipo de columnas (dinámicas, estaticas o sin columnas), su altura (Height) y el ancho (Width) en el cual podremos especificar tanto el ancho de la columna como el espacio entre columnas (Gutter), y el total de ambos.

En el siguiente ejemplo nos queda claro el uso de este cuadro de configuración.

En el ejemplo, en el cuadro Column Settings se ha escogido la opción Static Columns con un total de 2 columnas, se han modificado los valores de Height y Width, y se muestra el resultado final en pantalla.

– Insert Column Break Alt+Enter: si elegimos Dynamic Columns o No Columns, inserta una columna al escoger esta opción o mediante las teclas Alt+Enter.

En el caso que elijamos Static Columns y por ende definamos un número de columnas, esta opción nos servirá para pasar de una columna a otra.

2- Symbol: esta opción nos permitirá insertar símbolos de forma similar a un procesador de texto, pero en este caso también se incluyen por defecto los más utilizados en dibujo técnico como por ejemplo Degrees (grados), Plus/Minus (±) o el símbolo de diámetro (Ø). Si realizamos click en la opción nos aparece el siguiente menú:

En este encontraremos los símbolos más utilizados en dibujo técnico y diseño como los ya antes mencionados Degrees, Plus/minus y Diameter. El resto de símbolos que encontramos son:

– Almost Equal.
– Angle.
– Boundary Line.
– Center Line.
– Delta.
– Electrical Phase.
– Flow line.
– Identity.
– Initial Length.
– Monument Line.
– Not Equal.
– Ohm.
– Omega.
– Property Line.
– Subscript 2.
– Squared.
– Cubed.

Los cuales pueden verse representados en la imagen de abajo, ordenados de izquierda a derecha y de arriba hacia abajo:

En la imagen se visualizan en pantalla todos los símbolos por defecto del menú Symbol.

Además del menú mismo, también podremos insertar un espacio si elegimos la opción Non-Breaking Space Ctrl+Shift+Space (o simplemente presionando las teclas Ctrl+Shift+Space), y si elegimos Other podremos acceder al cuadro clásico de inserción de símbolos de windows (mapa de caracteres), donde podremos insertar otros símbolos especiales o que no se encuentren por defecto:

3- Field: esta opción nos permitirá insertar diversos formatos de “campo” (como por ejemplo, un autor, comentarios o una fecha) ya que posee una base de datos con los formatos más utilizados para campos, de forma similar a EXCEL. Estos se insertan como textos en el cuadro de edición, pero por ser campos estos no pueden ser editados.

En el ejemplo se inserta una fecha específica mediante el campo CreateDate.

E) Grupos Spell check, Tools y Options:

Estos grupos contienen funciones relativas a la revisión de los textos y opciones generales. Las funciones de este grupo son las siguientes:

1- Spell Check: esta opción es el corrector ortográfico el cual permite revisar el texto y corregir errores de ortografía, de forma similar a Word.

2- Edit Dictionaries: esta opción nos permite definir el diccionario principal que utilizaremos para las revisiones ortográficas. si presionamos la opción nos aparece el siguiente menú:

En este podremos definir el diccionario que utilizaremos mediante Current main dictionary y también podremos agregar diccionarios propios mediante la opción Current custom dictionary. Para realizar esto último, debemos importar archivos especiales de extensión .CUS mediante la opción Import.

Si presionamos la flecha inferior derecha del grupo Spell check, podremos acceder a un cuadro de opciones llamado Check Spelling Settings:

En este cuadro donde podremos ignorar o no ciertos tipos de palabras para facilitar la revisión de textos. Estos son:

– Ignorar palabras en mayúsculas para Texto de Autodesk y DWG (Ignore words in uppercase/capitalized words).
– Ignorar palabras con casos mixtos para Texto TrueType (Ignore words with mixed cases).
– Ignorar palabras con números para ISO9000 (Ignore words with numbers).
– Ignorar palabras que contengan puntuación para TA/3 (Ignore words containing punctuation).

3- Find and Replace: esta opción es el equivalente a “buscar y reemplazar” que poseen procesadores de texto como Word.

Si clickeamos la flecha derecha que está al lado del grupo Tools, podremos acceder a dos funciones complementarias llamadas Import Text y All CAPS.

La más interesante de las dos es Import Text ya que si la seleccionamos, podremos importar cualquier texto sin formato (en TXT) o de texto enriquecido (en formato RTF) para poder colocarlo en nuestro cuadro de edición de textos, tal como se aprecia en la secuencia siguiente:

Importando un texto desde un archivo TXT mediante Impot Text.

En el caso de All CAPS, si lo seleccionamos nos permitirá escribir todos nuestros textos en mayúsculas de forma automática sin necesidad de utilizar las teclas Bloq Mayus o Shift.

4- More: literalmente significa “más” y por ende, nos da más opciones para la modificación del cuadro de edición de textos. Entre estas tenemos:

– Character Set: nos permite elegir el lenguaje de codificación que deseemos para nuestro texto. Entre los alfabetos tenemos disponible el arábigo, cirílico (ruso), japonés, koreano y hebreo entre otros.

– Editor Settings: nos permite editar varias funciones del cuadro de edición de los textos. En este caso, disponemos de las siguientes opciones:

– Always Display as WYSIWYG: si seleccionamos esta opción el texto se nos mostrará “tal cual es” en la pantalla, de acuerdo con el sistema WYSIWYG de los procesadores de texto (en inglés “What You See Is What You Get” o en español, “lo que ves es lo que obtienes”).

– Show Toolbar: esta opción nos mostrará o no la barra de edición de textos de versiones antiguas de AutoCAD (barra Text Formatting).

– Show Background: esta opción nos mostrará o no el fondo del cuadro de edición de texto. Si lo desactivamos, el fondo será transparente.

– Text Highlight Color: esta interesante opción nos permitirá definir el color de fondo que tenga el campo de selección del texto. Podemos cambiarlo gracias a la paleta de selección de color (Select Color).

– Ruler: muestra o no la regla superior del cuadro de edición de texto. Por defecto está activada pero si presionamos el botón, se desactiva.

– Undo/Redo: deshace y rehace el último texto ya escrito, de forma similar a un procesador de texto.

Finalmente, podremos cerrar el cuadro de edición del texto mediante el botón Close Text Editor lo cual hará que nos salgamos del modo de edición y nuestro texto Multiline se mostrará en pantalla con todos los cambios que realizamos en este. Podremos volver a ingresar al panel de edición del texto las veces que queramos haciendo doble click en el texto respectivo y lo podemos editar una y otra vez, a diferencia del texto Single Line el cual depende en el 100% del estilo de texto que le definamos.

Este es el fin de este tutorial.

Nuevo Tutorial de AutoCAD 2D: Textos parte 1

Nuevamente les saludo estimados visitantes y junto con disculpar la tardanza en actualizar el sitio web, esta vez agrego un nuevo tutorial que en realidad se los debía desde hace muchísimo tiempo, ya que extrañamente no lo había agregado al blog a pesar de ser algo fundamental en el dibujo en AutoCAD 2D: se trata de los Textos en AutoCAD parte 1: Single Line y Estilos de texto. Debido a que la materia es algo extensa, el tutorial completo se hará en dos partes y en esta primera parte que se postea vemos los textos simples y los estilos de texto. El tutorial también puede ser visto en la sección correspondiente a Tutoriales AutoCAD.

Como de costumbre no me queda más que agradecer sus visitas y el apoyo que le han dado a MVBlog. Y hasta la siguiente actualización, donde se posteará la segunda parte del tutorial de Textos.

Saludos cordiales y hasta la próxima,