Académique Documents
Professionnel Documents
Culture Documents
DEFINICIN
Java 3D es un API (Application Programming Interface) de grficos 3D desarrollada por Sun como una extensin del JDK 2 del lenguaje de programacin Java. Es una coleccin de clases que tienen como objetivo principal facilitar la creacin de aplicaciones y applets con grficos en tres dimensiones. Permite:
Construir
VENTAJAS
Es completamente libre, lo cual implica otras ventajas como ahorro de recursos, modificacin por parte de los usuarios para mejorarlo o adaptarlo a sus requerimientos, etc. Interfaz de alto nivel. La visualizacin se basa en las APIs: OpenGL, DirectX (slo Windows) Programacin 3D independiente de la plataforma (Linux, Solaris, Windows, Mac Os X, Irix 6.5) La escena se construye creando un grafo. La aplicacin 3D puede ser un Applet.
DESVENTAJAS
El API oculta detalles de cmo se visualiza la escena. Los componentes de Java 3D son pesados (heavyweight). Java 3D es una extensin que no forma parte de la distribucin estndar de Java. No es tan rpido como una aplicacin en cdigo nativo en OpenGL o DirectX.
CARACTERSTICAS
De los objetos se puede controlar su color y textura. Permite aadir luces y efectos de niebla. De los objetos se puede controlar su tamao, posicin y orientacin y cmo dichos atributos evolucionan en el tiempo.
GRAFO DE ESCENA
Un universo virtual de Java 3D se crea a partir de un grafo de escena. Una definicin habitual de grafo es una estructura de datos compuesta de nodos y arcos:
Nodos : Un nodo es un elemento de datos. Los nodos del grafo de escena se corresponden con instancias de clases Java 3D. A los nodos padre, se les denomina nodos grupo. Arcos: Un arco es una relacin ente elementos de datos (representados por los nodos). Los arcos representan dos tipos de relaciones entre las instancias de Java 3D.
La relacin ms habitual es la relacin padre hijo. Un nodo grupo puede tener varios hijos, pero slo un padre. Un nodo hoja puede tener un padre, pero no hijos. La otra relacin es la referencia. Una referencia asocia un objeto del tipo NodeComponent con un nodo del grafo de escena. Los objetos NodeComponent definen tanto la geometra como los atributos de apariencia que se utilizan para renderizar los objetos visuales.
Objeto VirtualUniverse: Un objeto VirtualUniverse consiste en una lista de objetos Locale que contienen una serie de nodos del grafo de escena que existen en el universo. Normalmente, las aplicaciones slo necesitan un universo virtual, incluso las bases de datos virtuales muy grandes. Objeto Locale: El objeto Locale contiene un conjunto de subgrafos del grafo de escena cuya raz se corresponde con un nodo del tipo BranchGroup. Un objeto Locale no tiene padre en el grafo de escena, pero se une de forma implcita a un universo virtual cuando se construye. Un objeto Locale puede referenciar un nmero arbitrario de nodos BranchGroup, pero no tiene hijos explcitos.
Grupos
Individuales
Enlaces a SharedGroups (links). Shape3D (cubo, cubo de colores, cono, esfera, etc.). Luces (AmbientLight, SpotLight, etc.). Comportamientos. Sonidos. Efectos de niebla (fog). Imgenes de fondo (background).
CONCLUSIONES
Java 3D es una extensin de Java que proporciona una interfaz de alto nivel para la creacin de aplicaciones 3D. En un API multiplataforma. Permite incluir en la escena multitud de formatos. Se puede integrar con cualquier aplicacin escrita en el lenguaje Java.