Saltar la navegación

13. Macros

Los macros en 3D son objetos gráficos que contienen elementos de programación y/o gráficos. Su función es que todos los elementos de los macros puedan ser utilizados desde las escenas en bloque y cuantas veces como se quiera. Desde la escena que utiliza un macro se pueden modificar las propiedades o valores de los elementos del mismo. Por ejemplo, si creo un macro con un segmento, desde una escena se podrá llamar al macro y colocar tantos segmentos como se quiera y desde la escena se podrá cambiar los parámetros del segmento del macro (longitud, color, grosor, etc.).

Éste es el panel de configuración de un macro.

expresión

Se trata de un campo de texto.
El campo de texto debe contener la ruta relativa y el nombre del archivo que contiene los datos del macro.

A continuación, se expone un ejemplo de una escena con macros 3D.

La forma de definir nuevos macros 3D es análoga a la explicada para los macros 2D y que comentamos a continuación.

a) Se crea una escena con un único espacio 3D que puede tener elementos gráficos 3D y elementos de programación en un sólo espacio 3D. Por ejemplo, un segmento azul en un espacio 3D.

b) En el editor de Descartes, en el menú Archivo, Exportar como macro de Descartes. En nuestro ejemplo lo grabamos con el nombre mac1.txt. Su código es el siguiente:

 

c) Desde una escena nueva con un espacio 3D, se puede utilizar el macro tantas veces como se quiera y se pueden modificar los parámetros del macro. En nuestro ejemplo, colocaremos en una escena nueva 4 veces el macro segmento en distintas posiciones y rotaciones.

Para modificar el valor de una variable de un macro desde la escena desde la que se le llama se debe proceder de forma análoga a los macros 2D y los pasos son.

a) El macro debe tener definida una variable, por ejemplo, var.

b) Desde la escena se puede modificar una variable del macro, llamándola de la siguiente forma: nombre del macro.nombre de la variable. En nuestro ejemplo, es macro1.var (para variar valor de var del macro 1) y macro2.var (para variar el valor de var del macro 2 y de forma análoga se haría para la variable var de los macros3 y 4. De esta forma el valor de la variable var del macro1 será igual que el de la variable de la escena que lo llama macro1.var y el valor de la variable var del macro2 será igual que el de la variable de la escena que lo llama macro2.var.

Nota. Lo comentado para macros 2D, relativo a su uso en escenas en el equipo local es válido para macros 3D.

Actividad

Crear y utilizar macros 3D en escenas.