Ya hemos visto en un tutorial anterior el concepto de bloque, el cual se define como un grupo de objetos que se comportan como uno solo y que al insertarse en nuestro dibujo son referencias a un archivo DWG base. Una de las ventajas del uso de bloques es que evitamos que el archivo sea más grande que el necesario además que podemos modificarlos todos simplemente editando el archivo base. Sin embargo, desde AutoCAD 2007 existe una mejora importante a los bloques como tales y que nos permiten facilitarnos el trabajo tanto de inserción como de transformación de los mismos bloques y que se conocen como Bloques Dinámicos. La gran ventaja de estos es que debemos configurarlos sólo una vez y funcionarán siempre que los insertemos, evitando tener que transformarlos aplicando herramientas de transformación o rotándolos para insertarlos en algún espacio ya que estos bloques lo realizarán de manera automática. Además estos mantienen su esencia como bloque ya que se modificarán todos al editar el archivo base.
En este tutorial veremos cómo crear y usar los bloques dinámicos, cómo editarlos y cómo convertirlos en archivos para otros dibujos.
Nota: este tutorial está en proceso de re-estructuración y por lo tanto puede contener errores.
Creando El Bloque dinámico
Lo primero que debemos saber es que cualquier bloque o dibujo DWG puede convertirse en un bloque dinámico. Otra cosa importante a destacar es que los bloques dinámicos se diferencian de los bloques normales en que los primeros poseen “grips” o controladores donde podremos configurar propiedades específicas de estos como el alto, ancho, largo, rotación, etc, sin necesidad de ejecutar comandos de transformación o de modificación del dibujo. Y lo más interesante de todo es que el bloque mismo continúa siendo “bloque”, es decir, podemos editarlo mediante bedit y los cambios afectarán a todos los bloques aún cuando tengamos uno dinámico y otro normal.
En el ejemplo se muestra el bloque dinámico original mientras que en el segundo se modifican mediante las flechas y puntos del bloque parámetros como el largo, ancho y rotación, aún cuando ambos son el mismo bloque.
Para ejemplificar el concepto de bloque dinámico, realizaremos un sencillo ejercicio para configurar los atributos más utilizados en este tipo de bloques. Comenzaremos creando una cama básica que tendrá las siguientes medidas: 90 x 200 y desde allí definimos el espesor de la tabla en 3. La almohada medirá unos 70 x 20 y la centramos. En la misma almohada realizamos un fillet de 5 y en los bordes inferiores de la cama también lo realizamos. Si tenemos problemas para dibujar el espesor de la tabla y la sábana, podemos ayudarnos mediante las relaciones Nearest (cercano) y Perpendicular de OSNAP para poder colocar los puntos, o usar la siguiente imagen de referencia:
En estos últimos casos (almohada y bordes) no existe una medida precisa ya que lo que nos interesa realmente son las proporciones de la cama y sobre todo, su tamaño final. La idea es que nos quede algo parecido a la imagen siguiente:
Una vez que dibujemos la cama, la seleccionamos y luego la convertiremos en bloque mediante la herramienta B (block) y una vez en el cuadro Block Definition notaremos que se crea de manera casi automática, y por ello le asignamos el nombre cama.
Lo único que nos quedará es establecer el punto de inserción del bloque, para ello presionamos el botón Pick point y definiremos el punto superior izquierdo de la cama tal como se aprecia en la imagen:
Esto es importante ya que desde ese punto se aplicarán los futuros controles de rotación y alineación de nuestro bloque dinámico. Ahora volveremos al cuadro Block Definition marcaremos la opción Delete para que el bloque quede sólo en el editor y el dibujo original sea borrado del área de trabajo.
Si damos OK, Notaremos que el dibujo desaparece pero si escribimos bedit nos aparecerá en el editor de bloques. Esto será suficiente para iniciar la configuración de nuestro bloque dinámico. Si en la barra de comandos escribimos bedit iremos al editor de bloques. También podremos acceder a este mediante el icono edit del grupo blocks, en el caso de las versiones 2010 en adelante.
Cuando ejecutamos el editor de bloques, elegimos nuestro bloque cama recién creado ya que este nos aparece en el cuadro Edit Block Definition:
Una vez que lo realicemos, encontraremos nuestro dibujo en la siguiente pantalla:
Esta pantalla es conocida como el Espacio Bloque y su función es editar o configurar los bloques que hayamos definidos, ya que nos muestra el dibujo original. A su lado, vemos una barra de herramientas que contiene diversos parámetros la cual se llama Block Authoring Palettes. Esta nos permitirá configurar las diversas propiedades de nuestros bloques para convertirlos en “dinámicos”.
Lo primero que haremos en el caso de nuestro ejercicio, será configurar el largo de la cama. Esto nos permitirá cambiar el largo a nuestra voluntad al insertar el bloque. Lo primero que haremos será hacer click en parameters >> linear y creamos una línea desde los puntos medios de los anchos de la cama, de forma similar a como acotamos de forma lineal.
Si lo hacemos correctamente, el resultado debiera ser el de la imagen siguiente. Notamos que ahora se forma una especie de cota y aparece el texto llamado Distance 1.
Si queremos cambiar el nombre de esta distancia podremos hacerlo mediante el comando pr (propiedades). Activamos el comando, seleccionamos la cota y la renombramos en la opción Distance name. A esta distancia la llamaremos largo.
Una vez hecho esto, notaremos que hay dos flechas celestes en los extremos del largo. Estas flechas nos permitirán editar la cama pero antes de eso debemos asignarle una acción a este parámetro para que una vez inserto el bloque esta edición funcione. Para ello vamos a la persiana Actions y allí seleccionaremos la opción Stretch.
Stretch es un comando que nos permite alargar las líneas que le designemos. Al ejecutarlo, AutoCAD nos preguntará el parámetro a seleccionar, elegimos la cota llamada largo y hacemos click en ella:
Ahora el programa nos preguntará el punto que se tomará durante la edición, elegimos la flecha celeste de abajo y hacemos click. Si lo hacemos bien, se nos creará un punto rojo en cruz:
El paso siguiente es definir el área que será intervenida o alargada. Elegiremos mediante un rectángulo la parte baja de la cama, de acuerdo con la imagen siguiente:
Esto es importante pues nos indica el área que será afectada por la transformación de Stretch y por ende cuando insertemos el bloque tendremos que elegir la flecha de abajo para ejecutarla. Una vez hecho esto, el programa nos pedirá elegir las líneas de esa área (y por consiguiente del dibujo) que serán afectadas. Elegimos el contorno de la cama y presionamos enter:
Nota: si las líneas del contorno no están unificadas, no se debe seleccionar la línea superior de la cama al momento de crear la acción.
Con esto ya hemos terminado de crear el parámetro y esto se confirma de manera inmediata ya que nos aparece el símbolo de Stretch en el espacio bloque.
Si presionamos el botón secundario del mouse encima de este símbolo podremos acceder a un menú con otras funciones complementarias como por ejemplo, borrar esta acción mediante Delete o renombrarla mediante Rename Action. En Action Selection Set podremos crear una nueva acción (New Selection Set) o si nos equivocamos en la acción o selección de las líneas, podemos rehacer la acción ya realizada mediante Modify Selection Set. También podremos mostrar o no todas las acciones.
Si queremos ver el resultado de nuestra operación antes de insertar el bloque, podemos probarlo en la opción Test Block que aparece al inicio del espacio bloque o escribiendo en la barra de comandos btestblock y luego presionando enter.
Si seleccionamos el bloque en este espacio de testeo, notaremos que está el punto de inserción marcado mediante un cuadrado azul y la flecha de abajo que representará la edición del largo de nuestra cama. Podemos testear el bloque tomando la flecha y modificando el largo de la cama para comprobar que nuestro bloque dinámico funciona correctamente.
Al terminar la prueba del bloque, podemos cerrar el espacio del testeo mediante el botón Close test Block:
Una vez realizada la prueba, lo que corresponde ahora será salirnos espacio bloque escribiendo bclose en la barra de comandos o mediante el botón Close Block Editor. Al salirnos, AutoCAD nos preguntará si queremos salvar o no el bloque, en este caso es importante guardarlo (Save the Changes to…) para que se guarden todos los cambios y podamos usar el bloque en el espacio modelo.
Una vez que ya estemos en el espacio modelo, procederemos a insertar nuestro bloque recién configurado de forma normal. Para eso escribimos insert en la barra de comandos o presionamos el ícono insert block para insertar el bloquel. Notaremos eso sí, que en la vista previa de nuestro bloque tiene un símbolo (un trueno amarillo) a su lado. Este indica que el bloque es de tipo dinámico.
Para ejecutar el parámetro que configuramos, una vez insertado el bloque lo seleccionamos y notaremos que en la base de la cama hay una flecha celeste. La tomamos, realizamos click en ella y notamos que ahora podemos editar el largo de la cama simplemente moviéndola de arriba a abajo:
Si queremos especificar distancias, con el modo ortho activado (F8) simplemente movemos el mouse hacia arriba si queremos acortarla o hacia abajo si queremos alargarla para luego escribir la distancia, la cual se contará a partir de la flecha original. En la secuencia de abajo se ha modificado el largo de la cama original a 250 simplemente moviendo la flecha hacia abajo y luego escribiendo el valor 250 en la barra de comandos, para luego finalizar con enter.
Como se puede apreciar, un bloque dinámico nos permite un ahorro considerable de tiempo de trabajo ya que cualquier cambio que hagamos a nuestro bloque dinámico sólo afectará a este y no al resto de los que insertemos, sin embargo si realizamos cambios al bloque original estos cambios afectarán a todos. En el caso de la imagen de abajo, tenemos nuestra cama modificada en su largo a 250 y a su lado el bloque insertado de forma normal. Sin embargo, al bloque original se le ha aplicado un hatch y por ende este afecta tanto al bloque normal como al bloque modificado, ya que este último se sigue comportando como un “bloque”.
Otra de las grandes ventajas de los bloques dinámicos es que podremos configurar muchos parámetros en un solo bloque, lo que implica que en el caso de nuestro ejercicio podemos configurar otras funciones muy interesantes que potenciarán el dinamismo de nuestro bloque, como la configuración de la segunda dimensión (ancho), rotaciones, escalas y alineamientos.
Potenciando El Bloque dinámico: dimensionando el ancho
Ahora configuraremos el parámetro de ancho en nuestro bloque, y lo haremos de la misma forma que con la cota de “largo”. Lo único que deberemos tomar en cuenta es que esta vez deberemos seleccionar los puntos medios de los largos, tomaremos la flecha del lado derecho para que sea este el que nos permita editar este valor, y en este caso deberemos seleccionar las áreas y las líneas que se indican en la siguiente secuencia:
Si queremos, podemos elegir la almohada o no aunque se recomienda hacerlo para apreciar mejor el efecto. De esta forma podremos editar nuestro bloque tanto en su largo como en su ancho. Nos salimos del espacio bloque y guardamos los cambios. Insertamos el bloque o probamos el que ya tengamos en el espacio model, y el resultado de la acción recién creada es el siguiente:
Alineado automático del bloque dinámico
Seguiremos potenciando nuestro bloque dinámico añadiéndole esta vez un parámetro llamado Align, el cual permitirá alinear el bloque a una línea cuando lo insertemos. Si lo ejecutamos correctamente el bloque se alineará automáticamente a una línea tanto de forma ortogonal como diagonal. Para hacerlo, vamos al espacio bloque (BEDIT) y en Parameters elegimos el parámetro Alignment:
Ahora el programa nos pedirá el primer punto y elegimos el punto de inserción del bloque, el cual será el vértice superior izquierdo de la cama:
Hacemos click y luego elegimos el punto del otro lado de la cama (vértice superior derecho) y si lo hacemos bien, se nos creará una flecha que se posiciona en el punto de inserción de nuestro bloque la cual indica que el parámetro está agregado:
En este caso no es necesario aplicarle acción alguna ya que la función se activa de forma automática, por lo tanto guardamos el bloque y cerramos. Ahora procedemos a crear una serie de líneas horizontales y diagonales para probar nuestro bloque en el espacio model. Si lo hacemos bien, al insertarlo y acercarlo a las líneas notaremos como este se alinea de forma automática a estas.
Rotación del bloque dinámico
Ahora agregaremos a nuestro bloque dinámico un parámetro llamado Rotation. Si lo ejecutamos correctamente podremos rotar el bloque desde un punto que definamos sin necesidad de ejecutar el comando rotate. Para hacerlo, vamos al editor de bloques y en Parameters elegimos Rotation.
El programa nos pedirá el primer punto (el de pivote) y podemos elegir el punto que queramos, pero en nuestro caso elegiremos el punto medio de la parte superior de la cama para facilitar la rotación al manipular el bloque:
Ahora el programa nos pedirá un punto desde donde comenzaremos la rotación y elegimos el otro extremo de la cama (en caso que elijamos un punto en el espacio, mantendremos el modo ortho activado para mantener la línea recta):
Hacemos click y esta vez el programa nos pedirá el ángulo base para la rotación el cual por defecto es 0. En este caso es mejor dejarlo con el valor por defecto ya que la línea definida entre el punto medio y el extremo superior derecho forman precisamente el ángulo “0”. Realizamos click y con esto terminamos la aplicación del parámetro:
Una vez definido el punto de pivote y el ángulo de rotación, nos vamos ahora a las Actions y elegimos Rotate:
Ahora realizamos click en el parámetro Angle y cuando el programa nos pida los objetos a rotar elegiremos toda la cama (incluso los parámetros ya configurados anteriormente), de forma similar a como se aprecia en la secuencia siguiente:
Presionamos enter y notamos que se nos creará el símbolo de Rotate en el espacio bloque. Guardamos el bloque y cerramos. Si insertamos el bloque en el espacio modelo y luego lo seleccionamos notaremos que ahora aparece un punto celeste el cual nos indica que si lo seleccionamos y luego lo movemos, podremos rotar sin problemas la cama tomando como punto de pivote el punto medio de la parte superior de la cama. En este caso, podremos establecer los ángulos de forma precisa con ayuda de referencias como Polar o simplemente escribiendo el valor del ángulo y luego presionando enter.
En el ejemplo se ha rotado el bloque en un ángulo de 15°.
Como ya vimos en todos los ejercicios anteriores, dinamizar los bloques nos permitirá un ahorro considerable de tiempo y de trabajo ya que podremos ahorrarnos el tener que rotarlos, alinearlos al insertarlos o modificar los parámetros principales de cada bloque por separado según se necesite y usando un solo bloque como base. En la siguiente imagen vemos la modificación de los parámetros de cada bloque insertado de forma independiente pero como se dijo antes, siempre manteniendo el mismo “bloque” base:
Este es el fin de la primera parte del tutorial. Puede continuar hacia la segunda parte de este haciendo click en este enlace.
Hola, gracias por tu artículo. Tengo una duda con un bloque dinámico. He dibujado la escala gráfica en el espacio modelo con una escala 1:1, pero ahora no sé dónde tengo que insertarlo, si en el espacio modelo o en el espacio papel, ya que dependiendo de dónde lo haga, no tiene las mismas dimensiones. No sé si me he explicado…
Estimado, lo mejor es siempre dibujar todo en el espacio modelo ya que el layout se utiliza preferentemente para componer la lámina. Saludos.
hola, gracias por el tuto. tengo un problemilla: Necesito crear un bloque con unos veinte modelos de un aparato industrial (un ciclón), cuyas medidas están en una tabla de Excel. Son unas diez medidas que configuran la forma del ciclón. para no poner a mano en la tabla de consulta las (10×20) 200 medidas, hay alguna forma de hacerlo con copiar y pegar datos? (aunque no sea una tabla de consulta). ¿podría ser un bloque con restricciones en lugar de usar acción-parámetro?
gracias
Hola Daniel, yo busco algo similar que lo haga una tabla, para no tener que estar dibujando cada caso, pero creo que por aqui no te han contestado.
Si logras averiguar como se hace me podrías escribir a mi e-mail: marioreynaldo63@gmail.com por favor
Estos bloques solo pueden usarse dentro del dibujo donde se han creado? Como es posible que los bloque dinamico esten en la carpeta de bloques para ser usados en todos mis dibujos?
Hola, puedes crear un bloque dinámico y guardarlo en una carpeta que identifiques fácilmente para que posteriormente lo insertes en los dibujos que quieras. Para mí la mejor opción es abrir la paleta de herramientas “Ctrl+3” y arrastrar el bloque que has creado hacia el lugar que desees; la paleta al estar presente en todos los dibujos puedes ver el bloque que creaste y con tan solo darle un clic o arrastrarlo hacia donde quieres, este se insertará sin ningún problema.
Espero te haya servido de algo !
que genial aunque no entendí nada xD
Súper gracias… Muy buen aporte
Muy buen tutorial, bastante util
Muy bueno y sencillo. Gracias. Me ha sido de utilidad.
Excelente aporte =D
Exelente Tutorial me ayudo a hacer bloques dinamicos con mas eficiencia
un saludo y gracias
Genial me sirvio de mucho. Pero me pregunto si se puede incrementar la cantidad de un determinado componente dentro del bloque, a medida que se extiende su dimencion.?
al crear un Bloque Dinámico y guardarlo, verifico que si quiero insertarlo en la hoja modelo , me figura que dicho bloque no existe. Algo debo estar haciendo mal.
Me pueden ayudar
Desde ya muchísimas gracias
Esta en las restricciones, en la paleta de propiedades, en la parte Bloques, esta la restricción, de permitir descomposición o permitir copiar, poner no, es todo, luego puedes llevarlo a donde quieras, verificar también las unidades.
Estoy comenzando CAD 3D y realmente estos comentarios para usuario basico estan muy buenas, espero continuen aportando y si termino esta capacitacion cuando tenga experiencia o algo novedoso la integrare al blog.
Un abrazo desde Uruguay
Joray961
La verdad que un excelente tutorial – de gran utilidad — muchas graciaaaas !!
Me ha sido de gran ayuda, muchas gracias por el aporte, agradezco que de forma totalmente gratuita nos compartan todo este conocimiento.