Buscar en este blog

viernes, 18 de marzo de 2011

Bloques Dinámicos. El parámetro XY

Los Bloques Dinámicos fueron introducidos en la versión 2006 de AutoCAD y permanecieron prácticamente sin cambios hasta la versión 2010, donde se añadieron las restricciones geométricas y los parámetros de restricción. Aún con carencias, constituyen una de las herramientas más poderosas y menos conocidas de AutoCAD.

Iniciamos una serie de artículos independientes sobre el desarrollo de Bloques Dinámicos desde un punto de vista fundamentalmente práctico, centrándonos en aspectos difíciles de encontrar en libros y manuales.

El Editor de bloques

Para la creación y modificación de bloques, AutoCAD 2006 introdujo un nuevo espacio independiente del espacio modelo y del espacio papel, denominado 'Editor de bloques', que permite trabajar en la definición de un bloque de forma completamente aislada del resto del dibujo. Cabe señalar que este editor no sólo es útil para crear o editar bloques dinámicos, sino también bloques convencionales o estáticos (no dinámicos), pero con la salvedad de que es un editor pensado exclusivamente para bloques en dos dimensiones. Los bloques dinámicos, al menos hasta la versión 2011, sólo se pueden construir en 2D.

Los procedimientos de acceso al Editor de bloques en la versión 2011 de AutoCAD son los siguientes:
  1. Comando EDITARBLOQUE (BEDIT)
  2. Cinta de Opciones (ribbon) > Ficha Insertar > Grupo Bloque > Botón Editor de bloques.
  3. Menú desplegable Herr. > Editor de bloques.
  4. Doble clic sobre una referencia de bloque en el dibujo (sólo funcionará si el bloque no tiene atributos y si no se ha modificado el comportamiento por defecto del doble clic para las referencias de bloques)
  5. Barra de herramientas Normal > Editor de bloques.
  6. Designar una referencia de bloque y seleccionar la opción Editor de bloques en el menú contextual (botón derecho del ratón). El bloque seleccionado se abrirá directamente en el Editor de bloques.
  7. Dentro del cuadro de diálogo Definición de bloque, cuando creamos un bloque nuevo con el comando BLOQUE (BLOCK), si activamos la casilla Abrir en Editor de bloques y pulsamos el botón Aceptar el bloque creado se abrirá en el Editor de bloques.
Nota: con las opciones 1 a 5 se abre el cuadro de diálogo 'Editar definición de bloque' que permite seleccionar un bloque existente o crear uno nuevo. Si hay un bloque designado en el editor de dibujo, su nombre aparecerá ya seleccionado en este cuadro y bastará aceptar para entrar en el Editor de bloques.

Construcción de un bloque dinámico

Abra el dibujo BloqueRectangCruz.dwg. Este dibujo contiene la definición del bloque RectangCruz con el que vamos a trabajar, además de una referencia a este mismo bloque que se encuentra ya insertada en el dibujo.

Abra el bloque RectanCruz en el Editor de bloques. El bloque se compone de una polilínea que forma el contorno del rectángulo (un cuadrado de 1x1 en su definición inicial), dos líneas diagonales y un atributo de texto sencillo en la intersección de las diagonales. Vamos a añadir un parámetro XY que estire el rectángulo desde las cuatro esquinas, cuatro parámetros de alineación centrados en cada una de las aristas, un parámetro de punto para desplazar el texto y un parámetro de punto base situado en el vértice inferior izquierdo, señalado con el número 1 en la figura siguiente.
Para añadir parámetros y acciones emplearemos las paletas de creación de bloques, que sólo son visibles en el editor. Si la ventana Paletas de creación de bloques está oculta, puede hacerla visible con el botón Paletas de creación de la cinta de opciones o de la barra de herramientas del Editor de bloques. También puede abrirla o cerrarla utilizando los comandos PALCREARBLOQUE (BAUTHORPALETTE) y CERRARPALCREARBLOQUE (BAUTHORPALETTECLOSE), respectivamente.
Asegúrese de que esté seleccionada la ficha Parámetros en la ventana Paletas de creación de bloques y haga clic en el icono del parámetro XY. AutoCAD solicitará el punto base del parámetro con un mensaje donde se ofrecen seis opciones. Seleccione la opción Etiqueta (Label), responda a la solicitud de la etiqueta de propiedad de distancia horizontal escribiendo Ancho y a la solicitud de la etiqueta de propiedad de distancia vertical escribiendo Alto. Después, señale la esquina inferior izquierda (1) del cuadrado como punto base y la superior derecha (3) como punto final.


Ahora añadiremos los cuatro parámetros de alineación en el punto medio de cada uno de los lados del cuadrado, prestando mucha atención para que el pinzamiento quede en el interior del mismo (la punta de la flecha apuntando hacia el exterior)

Haga clic en el icono del parámetro de Alineación en la ficha Parámetros de la ventana Paletas de creación de bloques. Cuando AutoCAD solicite el punto base de alineación señale el punto medio (P1) del lado izquierdo del cuadrado y a continuación, con las herramientas ORTO o POLAR activadas, señale un punto (P2) por encima del punto base pero relativamente cercano a este, por ejemplo a 0.10 unidades, para indicar la dirección de alineación.


Operando del mismo modo, añada los otros tres parámetros de alineación en los lados superior, derecho e inferior, señalando en cada uno de ellos el punto medio P1 como punto base y el punto P2 como punto de alineación a 0.10 del primero.
Seguidamente añadiremos el parámetro de punto base. Haga clic en el icono del parámetro de Punto base en la ficha Parámetros de la ventana Paletas de creación de bloques. Cuando AutoCAD solicite la ubicación del parámetro señale el vértice inferior izquierdo del cuadrado. Al igual que los parámetros de alineación, este parámetro no requiere ningún otro ajuste adicional y además no lleva ninguna acción asociada ya que va implícita en el propio parámetro.

Completaremos el conjunto de parámetros de nuestro bloque con un parámetro de punto. Haga clic en el icono del parámetro de Punto en la ficha Parámetros de la ventana Paletas de creación de bloques. Seleccione la opción Etiqueta (Label) y responda a la solicitud de la etiqueta de propiedad de posición escribiendo PosiciónTexto. Después, señale la intersección de las dos diagonales del cuadrado para precisar la posición del parámetro y un punto cualquiera para la posición de la etiqueta.


Una vez definidos todos los parámetros podemos comenzar a asociar las acciones correspondientes a todos aquellos que lo requieran. Antes de nada y con objeto de que nuestra explicación resulte más clara, modificaremos ligeramente la configuración predefinida del Editor de bloques para las versiones 2010 y 2011, sustituyendo las barras de acciones por los ‘objetos de acción originales’.

Abra el cuadro de diálogo Parámetros del editor de bloques por medio del comando PARAMEDITBLOQUE (BESETTINGS) o haciendo clic en la flecha situada a la derecha del título de grupo Administrar en la cinta de opciones. Desactive la casilla Mostrar barras de acciones y cierre el cuadro de diálogo pulsando en el botón Aceptar. También puede efectuar esta misma operación asignando el valor 0 a la variable BACTIONBARMODE.
Comenzaremos asociando una acción de desplazamiento al parámetro de punto que hemos añadido en último lugar. Seleccione la ficha Acciones en la ventana Paletas de creación de bloques y haga clic en el icono de la acción de Desplazamiento. AutoCAD solicitará el parámetro al que asociar la acción. Responda a esta solicitud designando el parámetro de punto que hemos denominado PosiciónTexto en una zona cualquiera de su etiqueta. Después se solicitará el conjunto de selección para la acción, utilizando el mensaje habitual de designación de objetos. Responda a esta nueva solicitud designando la definición de atributo TEXTO, pulse Intro y señale un punto por encima de la definición de atributo para colocar la etiqueta de la acción.

El parámetro XY

Este parámetro es, probablemente, el más complejo de todos. Es el único con cuatro pinzamientos, mientras que los demás tienen uno o dos. Además, sus pinzamientos son de acción múltiple simultánea, es decir, cuando modificamos un bloque dinámico que tiene un parámetro XY y estiramos uno de sus pinzamientos, estaremos a la vez desplazando otros dos, los contiguos al pinzamiento sobre el que se actúa, lo que significa que no sólo se ejecutarán las acciones asociadas al primero sino también las asociadas a los otros dos, incluso en el caso de que estos últimos no sean visibles.

En la figura podemos ver que un desplazamiento del pinzamiento 3 con componente X e Y, produce a su vez un desplazamiento horizontal (sólo la componente X) del punto 2 y un desplazamiento vertical (sólo la componente Y) del punto 4.
Hecha esta aclaración previa, vamos a asignar acciones al parámetro XY de nuestro bloque, comenzando con las que estiran las esquinas del rectángulo. Esta acción funciona de forma muy parecida a como lo hace el comando ESTIRA en el editor de dibujo normal.

Haga clic en el icono de la acción de Estiramiento en la ficha Acciones de la ventana Paletas de creación de bloques. Seleccione el parámetro XY que hemos denominado Ancho/Alto. AutoCAD solicitará el punto del parámetro que se asociará con la acción. Si mueve el puntero del ratón en ese momento verá que se muestra un símbolo de color rojo sobre el punto del parámetro más próximo a la posición del cursor. Sitúese cerca del vértice inferior izquierdo del cuadrado para que el símbolo se muestre sobre ese punto y pulse el botón izquierdo del ratón. De este modo, la acción quedará asociada al punto del parámetro situado en el vértice inferior izquierdo del cuadrado.

El siguiente paso es crucial porque determina qué objetos serán estirados y cuáles serán desplazados. La operación se efectúa en dos fases. Primero se define un marco de estiramiento rectangular o poligonal y después se designan los objetos que se verán afectados por dicho marco. En la segunda fase, los objetos se pueden designar utilizando cualquiera de los métodos habituales: individualmente o por Ventana, Captura, Borde, etc. Los objetos designados que corten al marco serán estirados y los que sean interiores o queden en el exterior sufrirán un desplazamiento.

Responda a la solicitud del marco de estiramiento señalando dos puntos en la pantalla de forma que definan un área rectangular en torno al vértice inferior izquierdo del cuadrado. A continuación, designe todos los objetos que están o convergen en dicho vértice, es decir, la polilínea perimetral, la línea diagonal y el parámetro de Punto Base. El hecho de designar o no el parámetro XY y su pinzamiento es irrelevante y no tendrá ningún efecto en este caso ya que pertenecen al parámetro para el que estamos añadiendo la acción. Una vez designados los objetos, pulse Intro y señale un punto a la izquierda del vértice para colocar la etiqueta de la acción.


Repita esta última operación para añadir una acción de estiramiento a cada una de las otras tres esquinas del cuadrado, indicando como punto del parámetro el situado en el vértice correspondiente y designado para cada acción los objetos que convergen en dicho vértice, es decir, la polilínea perimetral y su diagonal respectiva.

El objetivo que perseguimos con la definición de este bloque es que al estirarlo, actuando sobre los pinzamientos de las esquinas, los pinzamientos de los parámetros de alineación permanezcan centrados en cada lado y que el atributo se mantenga en el centro del rectángulo. Vamos a añadir las acciones necesarias para que esto suceda.

Haga clic en el icono de la acción de Desplazamiento en la ficha Acciones de la ventana Paletas de creación de bloques. Seleccione el parámetro XY y luego la esquina inferior izquierda (1) como punto del parámetro que se asociará a la acción -también puede seleccionar la opción punto Base (Base) para conseguir el mismo resultado. Ahora designe los siguientes objetos: el Atributo TEXTO, el parámetro PosiciónTexto y su  pinzamiento (el cuadrado azul claro del centro) y los parámetros de alineación inferior e izquierdo además de sus respectivos pinzamientos (con forma de pentágono irregular). Una vez terminada la designación de objetos, pulse Intro y AutoCAD solicitará la posición de la acción mediante un mensaje donde ofrece tres opciones. Seleccione la opción Multiplicador (Multiplier) e indique el valor 0.5 como multiplicador de distancia. Finalmente, señale un punto a la izquierda del 1 y por debajo de la acción de Estirar que ya tenemos para colocar la etiqueta de la acción.


Añada una segunda acción de Desplazamiento para el parámetro XY indicando el vértice inferior derecho (2) como el punto del parámetro que se asociará a la acción y designe los parámetros de alineación inferior y derecho, además de sus respectivos pinzamientos, como los objetos que formarán el conjunto de selección para la acción. Seleccione nuevamente la opción Multiplicador (Multiplier) con el valor 0.5. Por último, sitúe la etiqueta de la acción a la derecha del punto 2 y por debajo de la acción de Estirar que ya tenemos.


Repita la operación para añadir una tercera acción de Desplazamiento para el parámetro XY indicando el vértice superior derecho (3) como el punto del parámetro que se asociará a la acción. Esta vez designe el Atributo TEXTO, el parámetro PosiciónTexto y su  pinzamiento así como los parámetros de alineación superior y derecho, además de sus respectivos pinzamientos, para formar el conjunto de selección de la acción. Seleccione también la opción Multiplicador (Multiplier) con el valor 0.5. Finalmente, señale un punto a la derecha del 3 y por encima de la acción de Estirar que ya tenemos para colocar la etiqueta de la acción.

Terminaremos añadiendo la cuarta acción de Desplazamiento para el parámetro XY, indicando el vértice superior izquierdo (4) como el punto del parámetro que se asociará a la acción y designando los parámetros de alineación superior e izquierdo, con sus respectivos pinzamientos, como los objetos que formarán el conjunto de selección para la acción. Seleccionaremos la opción Multiplicador (Multiplier) con el valor 0.5 y situaremos la etiqueta de la acción a la izquierda del punto 4, por encima de la acción de Estirar que ya tenemos.

El valor del Multiplicador, así como otras propiedades, se pueden modificar a posteriori seleccionando los símbolos de las acciones que queremos cambiar utilizando la paleta de propiedades (Ctrl+1) para ajustar los valores necesarios. Por ejemplo, podemos seleccionar los cuatro símbolos de acción de desplazamiento que acabamos de añadir y modificar en la paleta de propiedades el valor del campo Multiplicador de distancia para darle el valor 0.5.

Con las cuatro acciones de desplazamiento hemos terminado la definición de nuestro bloque. Cierre el Editor, haciendo clic en el botón Cerrar el Editor de bloques de la cinta de opciones o utilizando el comando CERRARBLOQUE (BCLOSE), y guarde los cambios que hemos realizado. Una vez de regreso al entorno de dibujo normal, seleccione la referencia del bloque y verifique el correcto funcionamiento de todos los parámetros que hemos definido.

Puede descargar el archivo de dibujo BloqueRectangCruzFinal.dwg que contiene la versión final del bloque dinámico.

Un apunte final sobre el parámetro tipo XY.

Es relativamente sencillo crear acciones para mover objetos del bloque vinculados con las esquinas del parámetro, pero no es tan sencillo mover proporcionalmente un punto cualquiera que se encuentre en otro lugar.
Por regla general si queremos desplazar proporcionalmente un punto cualquiera P (ver figura) que tiene Px y Py como coordenadas horizontal y vertical respectivamente tomadas desde el punto base del parámetro XY (P1), tendremos que asignar acciones a dos vértices opuestos, siendo uno de ellos el origen desde el que hemos medido Px y Py (en este caso el punto base P1) y el segundo el vértice opuesto (P3). Asignamos a P1 y P3 dos acciones de desplazamiento para cada uno de ellos, una para la x y otra para la y con los siguientes valores en la propiedad Multiplicador de distancia:

Acciones de
desplazamiento
asociadas al punto
Multiplicador de
Distancia horizontal (X)
Multiplicador de
Distancia vertical (Y)
P3
P1
(punto base de Px y Py)

Esto se simplifica mucho en el caso de que el punto a mover se encuentre en la diagonal del rectángulo (P1-P3), ya que se cumple que:
En este caso bastará con una acción en cada punto que afecta tanto a X como a Y, asignado dicho valor como Multiplicador de distancia. En nuestro bloque, el atributo TEXTO está asignado a acciones de desplazamiento asociadas a P1 y P3 con un multiplicador de distancia de 0.5 (ya que, además de estar en la diagonal, está en el centro, con lo que:

El atributo tiene además su propia acción de desplazamiento asociada a un parámetro de Punto, esto nos permite desplazar el atributo a un punto distinto del centro del rectángulo, de forma que cuando actuemos sobre los pinzamientos del parámetro XY el atributo mantendrá su posición relativa al centro.

Otro caso particular se presenta cuando el punto que queremos mover se encuentra en alguna de las aristas del rectángulo como el punto Q de la figura anterior. En ese caso bastará con dos acciones, una en cada uno de los extremos de la arista en la que se encuentre (los puntos P3 y P4 en la figura). En esta situación las acciones deben afectar tanto a X como a Y, y el multiplicador de distancias será:

Acciones de
desplazamiento
asociadas al punto
Multiplicador de
Distancia
P3
P4

En nuestro bloque el movimiento de los parámetros de alineación que hay en cada arista sigue esta regla, y como además están en el centro de las mismas, aún se simplifican más, cumpliéndose que:



1 comentarios:

Mauson dijo...

Exelente explicacion AMIGOS, gracias por instruirnos en este nuevo mundo, para mi, dentro de autocad, hace tiempo estuve buscando tutoriales relacionados a los bloques dinamicos y no lograba dar con nada serio, la explicacion aca desarrollada me mostro la manera de trabajar los parametros y de analizar su funcionamiento en relacion a la necesidad, MUCHAS GRACIAS