CB4 190 Glob Variables - En.es

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 4

La GDL Cookbook 4 Variables globales

Variables globales

sol Variables lobal


podría encontrar más útil, con un mínimo de comentario. Vea algunos
son las principal.
la configuración de su proyecto condiciones actuales
Ellos y
son conocidos por de los ejercicios para ver estos en uso activo.
ArchiCAD. Los objetos GDL pueden, en cualquier momento, interrogarlos y
hacer uso de la información. En las primeras versiones de ArchiCAD, variables globales eran
Cada nueva versión de ArchiCAD introduce más variables globales, y conocidos por una sola letra y un símbolo, por ejemplo A_ o T ~. Sin
hay que estudiar el apéndice en los archivos de Ayuda de CA y manual embargo, esto ha caído en desuso y se le aconseja el uso de los nombres
para ver la lista completa. Muchos de los más nuevos no son utilizables largos en el caso de las viejas cartas individuales (que todavía funcionan
para la construcción de modelos 2D y 3D (que son para el menú en AC8) se caen en futuras versiones, o no son reconocidos por los
Calcular). Mientras tanto, los siguientes son algunos de los GV de usted motores de GDL como el navegador Web, GDL Adapter, ArchiFM, tortuga
Negro o algo por venir.

Información general para el Medio Ambiente Información plantas


GLOB_SCALE: Escala de dibujo (A_). Utilizar esto para determinar la complejidad GLOB_HSTORY_ELEV: La elevación de la planta principal (B_) que el
será un símbolo 2D con secuencias de comandos. Por ejemplo, a escalas de objeto se coloca actualmente. Esto es importante si usted tiene una
hasta 1/20, que muestran las rebajas en las jambas de las puertas, en 1/50 se escalera, y desea que se muestre en el piso en casa como el inicio de
pueden mostrar como rectángulos, y más allá de eso, se representan como gira la un vuelo, y en la siguiente como el final del mismo vuelo.
puerta simples. Si utiliza anchos de línea verdaderos, esto es esencial.

GLOB_HSTORY_HEIGHT: Altura de la planta principal. (Q_).


GLOB_SCRIPT_TYPE: Tipo de script actual (T ~). Indica al objeto que la
escritura está trabajando actualmente. Consulte el archivo de ayuda para el GLOB_CSTORY_HEIGHT: Altura de la planta actual en la
1,2,3,5,6 resultados. ventana de Planta. (R ~).
GLOB_CSTORY_ELEV: La elevación de la planta actual en la
GLOB_CONTEXT: Contexto de la apariencia. Similar pero más amplio que el
ventana de Planta. (Q ~).
Script_type, esto permite que el objeto sabe que se está viendo, por ejemplo
GLOB_CH_STORY_DIST: la posición relativa de la planta actual
en una sección / alzado o en su símbolo 2D y puede modificar el nivel de
de la planta principal. (S ~).
detalle en consecuencia. Una secuencia de comandos 3D puede saber si se
está operando un comando project2 y puede simplificar el modelo con Información flythrough
formas planas en 3D en lugar de sólido 3D. Consulte el archivo de ayuda GLOB_FRAME_NR: Número del fotograma actual en la animación.
para el 1,2,3,4,5,6,7 muchos resultados, (NORTE_)
GLOB_FIRST_FRAME: número de cuadro por primera vez en la animación.
22,23,24, 43,44,46. (O_)
GLOB_LAST_FRAME: número de cuadro pasado en la animación. (PAG_).
GLOB_DRAWING_BGD_PEN: que más coincida con el color de la
forma más rápida de saber si un modelo está experimentando un flythrough
pluma con el color de fondo del dibujo.
es:
GLOB_MODPAR_NAME: La mayoría alterado recientemente parámetro. Esto SI GLOB_LAST_FRAME> 0 ENTONCES ......

es muy útil en el diseño de interfaz de usuario. Esto añade inteligencia al


objeto, ya que extrañamente parece saber el último parámetro ha cambiado o
Los atributos de símbolos
caja booleano se marca la casilla. Es la función más útil es en el diseño de
SYMB_VIEW_PEN: pluma por defecto de la pieza de biblioteca, (L_) si no se
interfaz de usuario donde se puede utilizar para hacer casillas de verificación
utiliza propia pluma del objeto.
booleanas funcionan como botones de radio.
SYMB_MAT: material por defecto de la parte de la biblioteca, (M_) si no utiliza
materiales propios del objeto.
SYMB_LINETYPE: Tipo de línea por defecto del objeto (si no ha utilizado
GLOB_LAYER: La capa a la que se ha asignado el objeto.
el objeto propio tipo de línea).

SYMB_FILL: Relleno predeterminado del objeto (si no se ha utilizado propia relleno


GLOB_INTID: El ID interno creado por ArchiCAD (no se puede editar
del objeto) cuando se cortan en la Sección, y consideraciones similares se aplican a
este).
los siguientes Planos generales:
GLOB_ID: La identificación proporcionada por el usuario en el cuadro de SYMB_FILL_PEN: Llenar pluma. SYMB_FBGD_PEN: Rellenar el fondo de la
configuración del objeto, en la opción de venta. pluma. SYMB_SECT_PEN: Pluma en la sección contornos.

GLOB_ELEVATION: Altura de la base con respecto a la planta actual (no para


SYMB_VIEW_PEN: pluma por defecto de la pieza de biblioteca, (L_) si no se
las ventanas / puertas, tienen sus propios Planos generales).
utiliza propia pluma del objeto.

88 Derechos de autor © 2004 Mermelada Gráficos


Variables globales

Las variables más


global

Información de la cámara La rotación de objetos


GLOB_EYEPOS_X, GLOB_ EYEPOS_Y, y GLOB_EYEPOS_Z SYMB_MIRRORED: Bandera para indicar si el símbolo D se refleja en el plan.
( K ~, L y M ~ ~) indican el objeto donde se encuentra la cámara (V ~). Esto es útil si usted tiene un símbolo 2D con guión, y desea asegurarse
más reciente. de que los puntos calientes y texto en los objetos siguen apareciendo en el
sentido correcto y en el lugar correcto, incluso cuando se refleja el símbolo. Si
GLOB_TARGPOS_X, GLOB_ TARGPOS_Y, y GLOB_
se marca la casilla de verificación 'espejo' en el diálogo de configuración de
TARGPOS_Z ( N ~, ~ O, P ~) indicar al objeto de lo que la cámara
objeto, el símbolo 2D y los puntos de acceso serán reflejadas por ti. Sin
está mirando - la 'posición de destino'.
embargo, es posible que desee las propiedades del script para saber que el

SYMB_POS_X, SYMB_POS_Y, SYMB_POS_Z ( X ~, ~ Y, Z ~) indicar objeto ha sido reflejada - por ejemplo, en la especificación de unidades

al objeto de que el objeto en sí está en el proyecto general. desking diestros o zurdos en los diseños de interiores.

Reconocimiento de ubicación: Estos Planos generales son útiles para


conseguir objetos para hacer frente a la cámara en una vista en perspectiva SYMB_ROTANGLE: ángulo de giro del objeto. (W ~). No importa
estática. Ellos pueden cambiar de posición ya que la cámara se acerca durante cómo se gira el objeto, puede enderezarlo o enderezar su
una flythrough volviendo a calcular su posición y la de la cámara. etiqueta de texto - ver la cuadrícula círculo.

Las limitaciones a Globals Información Orientación


(Si se establece la posición del sol en el diálogo de Sun).
Elementos de Biblioteca son solo eso, ellos no pueden ver otros objetos. Gracias
GLOB_NORTH_DIR: Dirección del proyecto del Norte (T ~). Forzar un punto
a las API de ArchiCAD, que puede parecer ser capaz de hacer esto, por ejemplo,
de Norte a cara Norte; fijar un panel o sombreado dispositivo solar para animar
la forma Rooflights encontrar y cortar el techo; Win- dow y puertas cortan
durante una flythrough.
paredes; los objetos pueden utilizar la gravedad para encontrar una superficie de
malla, de techo o de la losa. En la mayoría de los casos, estas son cosas que
GLOB_SUN_AZIMUTH: Dirección del Sol
sólo se puede influir por su elección de subtipo.

Ciertos ciertas cosas no pueden ser encontradas de Globals y pueden tener GLOB_SUN_ALTITUDE: Altitud del Sol
que ser encontrado utilizando el REQ y los comandos petición.
Ventanas / puertas
La mayoría de las variables globales son números; Las solicitudes son para
Hay un número enorme de variables globales que ver con ventanas y

fibras renum- o cadenas. Un ejemplo de un requerimiento sea actual Hora y puertas, por lo que las ventanas o puertas pueden conocer el espesor de
fecha del sistema, o el RGB de la pluma. pared, materiales, patrones de relleno y bolígrafos, altura de antepecho y
muchas más condiciones. Estos en su mayoría comienzan con el prefijo Wido.
MATERIAL SYMB_MAT: PEN SYMB_VIEW_PEN
Ellos hacen que el GDL para ventanas y puertas quizás el más complejo
MATERIAL M_ : PEN L_
de todos GDL a escribir. Se requieren más discusión en la sección de
ventanas / puertas de la GDL libro de cocina.

Variables globales: Ubicación Capacidad Consciente

yo
Hacerlo con variables globales!
capacidad
T es de toma dar
posible al objeto. Si ejecuta
una cierta un vuelo
cantidad de laadecisión
través del modelo, los La rutina de reconocimiento de ubicación utiliza variables globales. ArchiCAD

objetos pueden reaccionar a la posición de la cámara - si usted Reconstruir GDL cuenta la ubicación de la cámara y la propia ubicación del objeto.

cada cuadro '. El algoritmo de reconocimiento de la ubicación se puede aplicar Mediante la comparación de las diferencias de distancia en las direcciones X,
Y y Z (una resta simple que funciona sector en el modelo o la cámara está
a:
• árboles 2D y figuras humanas giran para mirar de cuerpo completo a la cámara. en), se utiliza un cálculo 3D Pitágoras para revelar la verdadera distancia

• La densidad de ramas y hojas de los árboles puede variar. Las personas y los objetos de dd de la cámara. DKX es la diferencia entre 'K ~' los GVs y 'X ~' -
automóviles pueden simplificar enormemente cuando la cámara está lejos. objetos posiciones del objeto y de la cámara en la dirección x. La misma
complejos como accesorios de vidrio y lamas deciden no llamar, o desactive las sombras. idea aplicada en la dirección Y y Z genera DLY y DMZ. Vea el
ejemplo aquí.
• Se encienden las luces encendidas en habitaciones.
Un cálculo ArcTan (ATN) revela el acimut (o dirección)
• objetos curvos cambian su valor RESOL / TOLER para mostrar más
dividiendo la distancia X en la distancia Y.
polígonos cuando la cámara está cerca, y reducen cuando está lejos.

Derechos de autor © 2004 Mermelada Gráficos 89


La GDL Cookbook 4 Ubicación Capacidad Consciente

Ubicación Capacidad Aware, continuó


! Localización de rutina de la conciencia! Con
variables globales cámara! Utilizando el sistema
de letras de edad.

DKX = K ~ - ~ X: SI DKX = 0 THEN DKX = 0,001 DLY = L ~ - Y


Cuando qué no funciona?
~ DMZ = M ~ - ~ Z
Si no hay ninguna cámara, por ejemplo, en una vista axonométrica o una
elevación, se necesita un 'fuera cláusula de rescisión' para establecer una
dr = SQR (DKX ^ 2 + DLY ^ 2)! Plan de distancia dd = SQR
distancia falsa de la cámara. Esto es para evitar una 'división por cero' error en el
(DKX ^ 2 + DLY ^ 2 + DMZ ^ 2)! Distancia azi = ATN (DLY /
cálculo del azimut. Por lo tanto la variable DKX se da un valor pequeño de 1 mm. DKX) !Azimut

SI ENTONCES facecam ROTZ 90 + azi-W ~


Los trabajos de rutina con estudios Sun y Flythoughs. Puertas y
ventanas pueden abrir durante una animación, pero debe hacerlo El ojo posiciona K ~, L ~, & M ~ también puede ser llamado GLOB_EYEPOS_X, Y y
sobre la base de número de cuadro. No funcionan correctamente con Z, y las posiciones de los objetos X ~, Y ~ & Z ~ puede ser llamado SYMB_POS_X,
Y & Z. El ajuste a DKX evita una brecha por error cero. Si acimut es crítica no es
'conocimiento de la ubicación', ya que se subordinan a la pared están
más que esto, pero esta rutina es lo suficientemente bueno para los árboles y las
unidos a y no se puede escribir la rutina de la pared. personas.

Animar basado en distancia / ángulo o tiempo?


Otros aspectos de la animación, tales como turbinas de viento cuyas palas A su
mirar más auténtico. Pero si usted necesita la rotación precisa, esta

vez, los edificios de apilamiento a sí mismos, vehículos en movimiento, figuras


rutina de Frank Chin de Brunei proporciona una solución. Es más

humanas en movimiento, ondulante mar, yates de escora, puertas y ventanas,


complicado que el ArcTan del método rápido y fácil - pero funciona!

etc son mejor hacerlo mediante el uso de la variable global GLOB_FRAME_NR

Frank escribe: A continuación se muestra la rutina que he usado para encontrar


(Número de trama en la animación) para determinar la acción - que el porte de una línea del punto 1 (x1, y1) al punto 2 (x2, y2). Esto puede ser
es equivalente a TIME. adaptado para ser una subrutina para calcular muchas líneas diferentes en una
forma.
Robar esta rutina!
Esta rutina de detección de la ubicación puede ser utilizado de nuevo - a mantenerlo

en su libro de recuerdos. He hecho un modelo en el que todos los componentes GDL

era consciente de la ubicación para mantener la carga de trabajo de representación

bajo control. Si el modelo es una milla o más de tamaño, puede ocultar por completo

los objetos demasiado distantes para ser digno de dibujo.

Reconstruir cada cuadro


Esta rutina funcionará para vistas fijas con diferentes distancias de la cámara
(después de un 'reconstruir'). Para asegurar que esto funciona durante un
sobrevuelo de la película, que necesita una reconstrucción cada cuadro a suceder
durante la animación. Esto se puede activar en el cuadro de diálogo justo antes de
comenzar un Flythrough.

¿Por dónde se va?


! ENCONTRAR COJINETE DE LINEA - Maestro de secuencias de comandos
Acimut es un cálculo difícil. Dado que los objetos podrían estar en dx = x2-x1 dy = y2-y1 hypo = SQR (dy
cuadrantes positivos y negativos, este cálculo podría producir la ^ 2 + dx ^ 2)

inversión. Existe un procedimiento interesante y complicada para el 100% ! hipotenusa


sinq = dy / hipo
azimut preciso. Aplicado a las personas y los objetos de árbol, no le cosq = dx / hipo
importa si los objetos flip 180˚ como que simplemente ayuda a la
aleatoriedad ! Angla es el ángulo de la línea! Hace con el eje X
horizontal IF dx = 0 THEN

! Prueba del algoritmo de acimut de Frank! Script SI dy> 0 THEN Angla = 90 ELSE Angla = 270 ENDIF IF dy
2D = 0 THEN
tinta de la pluma HOTSPOT2
0,0 HOTSPOT2 x1, y1 SI dx> 0 THEN Angla = 0 ELSE Angla = 180 ENDIF

HOTSPOT2 x2, y2 CIRCLE2


SI dx <> 0 y dy <> 0 THEN GOTO GOTO 121 131
0,0,0.1
121:
!Origen
LÍNEA 2 x1, y1, x2, y2! Sí x1 CIRCLE2, y1,0.02 Angla = SGN (ASN (sinq)) * ASN (sinq)! para obtener ángulo entre 0 y 90 grados sólo
línea! Inicio CIRCLE2 x2, y2,0.01! Fin si SGN (sinq) = 1 y SGN (cosq) = 1 entonces Angla = Angla SI SGN (sinq) = 1 y SGN
(cosq) = - 1 ENTONCES Angla = 180-Angla IF SGN (sinq) = - 1 Y SGN (cosq) = - 1
Definen el estilo 'angtst' 'Arial', 4,8,0 sistema del estilo ENTONCES Angla = 180 + Angla IF SGN (sinq) = - 1 Y SGN (cosq) = 1 ENTONCES
'angtst' TEXT2 0,0, Angla Angla Angla = 360 131:
!Etiqueta
x1 ARC2, y1, hipo, 0, Angla! AngleArc

90 Derechos de autor © 2004 Mermelada Gráficos


Variables globales

Variables globales:
Sensibilidad plantas

O Ften un1, tales


plantas objeto debe
como líneasaparecer
principales en otra escaleras, conductos de
de vigas,
ventilación, líneas de drenaje, alumbrado, etc. - pero no desea que aparezca
sólido. Aquí está un ejemplo de la Planta de sensibilidad, utilizando una sencilla
mesa redonda elástico.

GLOB_CH_STORY_DIST: se trata de un Mundial!


En su propia planta, la variable global S ~ (también conocido como
GLOB_CH_STORY_DIST) es cero. En otras plantas que es un número de por
ejemplo 1 para la plantas anteriormente, -1 para el piso más abajo. Por lo que
el objeto se puede visualizar en el piso en casa en toda su gloriosa detalle, y en
otras plantas se mostrará más simple uso de un tipo de línea de la elección del
usuario.

Aprenderá a definir el tipo de línea ! Simple tabla de objetos! Esta rutina


Script 2D garantizará que la
Una cosa que puede introducir aquí es un 'tipo de línea calculada'. Esto
PEN symb_pen segmentos
podría basarse en una fracción de la circunferencia de la mesa, en este caso cambian de tamaño para adaptarse a su
HOTSPOT2 0,0
1/36 de la misma - esto le da una línea coherente espaciamiento HOTSPOT2 -A / 2,0 objeto.
independientemente de la escala del dibujo - el patrón de línea de puntos HOTSPOT2 A / 2,0
HOTSPOT2 0, -A / 2 Este círculo de puntos tiene
será el mismo en 1/50 o 1 / escala 200. DEFINIR line_type es difícil, pero el
HOTSPOT2 0, A / 2 36 segmentos y las
ejemplo que aquí funciona. Definimos una línea sólida en primer lugar, a lagunas, pero al
DEFINIR 'sólido' 1,1,1 line_type SET
continuación, la línea de puntos más difíciles. Por supuesto, el grosor de punto final, siempre se
line_type 'sólido'
línea aún está sujeta a la escala del dibujo. consigue un doble
!Piernas segmento. La
SI GLOB_CH_STORY_DIST = 0 separación es la inversa
ENTONCES! Somos 'de los m de la escala por lo que
! Simple tabla de objetos!
Para k = 1 a 4 se ve bien sea cual sea
Script 3D
ROT2 k * 90 CIRCLE2 A / 2-THK, 0, thk / la escala del dibujo.
2 DEL 1 NEXT k ENDIF
MATERIAL tablmat PEN
cont_pen
Aquí convertimos
!Piernas
RESOL 8 para k = el tipo de línea
! SI mesa GLOB_CH_STORY_DIST definido a un valor
1a4
entonces! Somos 'No estoy en casa' numérico (un
ROTZ k * 90 ADDX
A / 2-thk 'índice') con
CILINDRO zzyzx-THK, THK / 2 DEL 2 SI ENTONCES calclin circum = P * A! el IND ()
SIGUIENTE k Circunferencia comunicado.
DEFINIR line_type 'tabl_lin' 1 / GLOB_SCALE,
2, circum / 36, circum / 36
!Mesa
tablin = INDIANA( Line_type, 'tabl_lin') line_type
RESOL 36 tipos de líneas especiales
SET tablin
ADDZ zzyzx-thk no funcionan a menos que
CILINDRO thk, A / 2 MÁS la propia 'Uso de objetos
DEL 1 line_type SET hilas Tipos de Línea es
ENDIF tictac
1 En la ortografía Reino Unido, 'historias' (pl. De la historia) es lo que dice a sus hijos antes
ENDIF
de dormir, y 'plantas' es lo que se llama a los niveles en los edificios.
CIRCLE2 0,0, A / 2! Dibuje la mesa

ROT2 -SYMB_ROTANGLE
Variables globales: HOTSPOT2 A * 0.6,0, 1000, esp, 4 + 128! Base
ROT2 angl HOTSPOT2 A *
Un-giratorio Object 0.6,0, 1002, esp, 5! Mover
LÍNEA 2 A / 2,0, A * 0.6,0 DEL 1

T SU simple
una y pequeñoo objeto
caja Northpoint podría
texto, en convertirse
el que engirar por un
no se puede
HOTSPOT2 0,0,

DEL 1 ROT2 -SYMB_ROTANGLE +


1003, esp, 6! Centro
comando normal de Ctrl-E.
angl poly2 5,7,
Sólo el parámetro Ángulo 'esp' o sus puntos de acceso lo rotarán.

- A / 2, -B / 2, A /
2, -B / 2, A / 2,
! El rotativo Objeto Un! Script 2D B / 2,

Sólo se puede girar el ángulo de punto de acceso HOTSPOT2 cambiador 0,0 - A / 2, B / 2,


- A / 2, -B / 2
DEL 1

Derechos de autor © 2004 Mermelada Gráficos 91

También podría gustarte