int z=0; // Plano de profundidad del gráfico del proceso


Esta variable predefinida es PUBLIC, lo que significa que cada proceso tendrá su propio valor en su variable z.

La variable local z define en qué plano de profundidad debe situarse el gráfico del proceso en la pantalla (el gráfico se define en la variable local graph). Es decir, qué debe aparecer por encima del gráfico del proceso y qué por debajo.

Los planos de profundidad pueden ser cualquier número entero dentro del rango (min_int ... max_int), y cuanto mayor sea el número, más al fondo se situará el gráfico (a mayor profundidad).

Por defecto, los planos de profundidad están dispuestos de la siguiente forma:

(+) Mayor profundidad

 +512 - Ventanas de scroll (ver scroll[].z)
+256 - Ventanas de modo3D (ver m3d[].z)
  0 - Gráficos de los procesos (local z)
-256 - Textos (ver text_z)
-512 - Puntero del ratón (ver mouse.z)

(-) Menor profundidad

Es decir, la variable local z que define el plano de profundidad de los gráficos de los procesos estará inicializada a 0. Los gráficos de los procesos se situarán debajo del puntero del ratón y los textos, y sobre las ventanas de scroll y modo 7 (si no se modifican los valores por defecto).

Todos los objetos (textos, gráficos, ventanas, ...) que se sitúen en el mismo plano de profundidad aparecerán en pantalla (al superponerse unos sobre otros) en un orden indeterminado, que puede variar de unas ejecuciones del programa a otras.

Si se quisiera, por ejemplo, que el gráfico de un proceso apareciera sobre todos los objetos del programa, se podría fijar para el mismo un plano de profundidad por encima del resto (como -1000), con la siguiente sentencia:

  z=-1000;

Inicialmente, todos los procesos tienen su variable z igual a 0, luego los gráficos de los procesos aparecerán en cualquier orden si no se define en qué plano debe situarse cada uno.

Se puede variar el plano de profundidad de un proceso (asignando un nuevo valor a su variable z) tantas veces como sea necesario dentro de un programa.

Los planos de profundidad del resto de objetos (ventanas, textos y puntero del ratón) también pueden variarse en cualquier momento del programa.

Nota : Los procesos que pertenezcan a una ventana de modo 3d (que tengan su variable ctype=c_3d_object o c_3d_cam) aparecerán en dicha ventana ordenados por estricto orden de profundidad en el plano tridimensional ignorándose el valor de su variable local z.

El único sentido que tiene la variable local z en procesos de un modo 3D es definir el orden en el que deben superponerse los procesos que estén exactamente en las mismas coordenadas del plano abatido, es decir, si se sitúan dos procesos en el plano tridimensional en las mismas coordenadas entonces se podrá, con la variable z, definir cuál de ellos debe aparecer sobre el otro.


Ver: Datos locales - mouse.z - scroll[].z - text_z