lunes, 23 de abril de 2012

VRML EXPLICACION


NODO PRIMITIVO BOX(CAJA)
Sintaxis: 
Box{  
     size anchura altura profundidad  
} 
Ejemplo: 
Box{  
     size 2.0 0.5 3.0  
REPRESENTA POR EL ANCHO,LARGO Y ALTURA DE LA CAJA

NODO PRIMITIVO CONE(CONO) 
Sintaxis: 
Cone{  
     height               altura  
     bottomRadius   radio_de_la_base 
     bottom               valor_lógico 
     side                    valor_lógico 
NODO PRIMITIVO CYLINDER(CILINDRO)
Sintaxis: 
Cylinder{  
     height                altura  
     radius                radio  
     bottom               valor_lógico 
     side                    valor_lógico 
     top                     valor_lógico 
Ejemplo: 
Cylinder{  
     height 2.0  
     radius 1.5  

EL RADIO INDICA DE LA BASE Y EL HERIGHT DE LA ALTURA
NODO PRIMITIVO SPHERE´(ESFERA)
Sintaxis: 
Sphere{  
     radius radio  
 
Ejemplo:  
Sphere{  
     radius 1.0  
 
INDICA EL RADIO DE LA ESFERA

 Ejemplo: 
 

#VRML V2.0 utf8  
Shape{  
   appearance Appearance{  
      material Material {}  
   }  
   geometry Cylinder{  
      height 2.0  
      radius 1.5  
   }  
COMO PONERELE TEXTO EN VRML
NODO TEXT
Como en cualquier procesador de textos, se nos permitirá indicar el tipo de fuente, su estilo, su tamaño, el espaciado entre caracteres, justificación de los parrafos, etc.  
Sintaxis: 
    Text { 
        string ["linea_texto 1", 
                     "linea_texto 2", 
                               . 
                               . 
                               . 
                      "linea_texto N",]     
fontStyle FontStyle { 
                                            family "Nombre_Fuente", 
                                            style "Estilo_Fuente", 
                                            size Tamaño_Fuente 
                                            spacing espaciado_entre_caracteres 
                                            justify "justificación_del_texto" 
                                          } 
    }
STRING: A QUI ES DONDE SE DEBE PONER EL TEXTO QUE SE DESEA UTILIZAR
FONT STYLE ES UN CAMPO OPCIONAL DONDE PUES PODER FAMILY EL NOMBRE DE LA FUENTE, STYLE ESTILO DE FUENTE, SIZE TAMAÑO DE FUENTE, SPACING, ESPACIO ENTRE CARACTERES Y JUSTIFY LA ALINEACION DEL TEXTO
AGRUPACION DE NODOS
NODO GROUP
El nodo Group permite unir un conjunto de nodos de forma que actúen como una entidad única, pero sin efectuar ninguna transformación en ellos. La principal característica de este tipo de grupo es que los objetos son creados todos en el mismo punto (en el centro del escenario de realidad virtual). 
Sintaxis:  
    Group { 
         children [ ... ] 
    }

CHILDREN
El campo children contiene la lista de los objetos que se quieren agrupar, representados por sus nodos Shape respectivos:  
 
Ejemplo: 
    Group { 
         children [ 
                 Shape { ... }, 
                 Shape { ... }, 
                 ... 
         ] 
    }

                NODO TRANSFORM
Por defecto todos los objetos (Shapes) se construyen en el centro del escenario virtual. El nodo transform nos va a permitir evitar esto, indicando la posición, orientación y tamaño de los diferentes objetos que va a crear.  
 
Sintaxis: 
Transform{ 
   translation  Eje_X  Eje_Y  Eje_Z 
   rotation      Eje_X  Eje_Y  Eje_Z  Ángulo 
   scale          Eje_X  Eje_Y  Eje_Z 
   children[...] 
} 

Cada objeto creado con el nodo transfrom tiene un scale,tranlation y rotation
Ejemplo: 
Transform{ 
    # Ejes:         X   Y   Z 
    translation 2.0 0.0 0.0 
    children [...] 
} 

El campo rotation nos permite girar el sistema de coordenadas del grupo alrededor de uno de los ejes del sistema de coordenadas del nodo padre. Para ello, además de indicar sobre que eje se desea realizar el giro, se ha de hacer referencia al grado de inclinación de dicho giro (en radianes). 
Ejemplo: 
Transform{ 
# Ejes:    X   Y   Z    Ángulo 
rotation 0.0 0.0 1.0   0.52 
children [...] 
} 
A través del campo scale podemos aumentar o reducir el tamaño de los ejes del sistema de coordenadas del grupo utilizando factores de escala que toman como referencia los ejes de coordenadas del sistema del nodo padre. De esta forma aumentamos o disminuimos el tamaño de los objetos que se crean. 
 
Ejemplo: 
Transform{ 
# Ejes:    X   Y   Z  
scale      0.5 0.5 0.5 
children [...] 
} 

Hay una solución prevista para simplificar las repeticiones de objetos dentro de un escenario virtual. Esta solución consiste en asignar un nombre arbitrario al nodo que se piensa repetir en el código. 
Se puede definir, para el ámbito de un documento VRML, que este tipo de cilindro tenga un nombre arbitrario, por ejemplo ColumnaRepetida (o como se desee, con tal de que comience por mayúscula), de la siguiente manera:  
 
 
 DEF ColumnaRepetida Shape { 
      appearance Appearance { 
           material Material { } 
      } 
      geometry Cylinder { 
           height 2.0 
           radius 0.5 
      } 
 }
 el ejemplo anterior de la caja y el cono, aparece el nodo Appearance repetido. Vamos a definirlo, en la primera ocasión que se utiliza con el nombre, "PorDefecto" y la segunda vez que se usa lo invocaremos mediante el comando USE
NODO MATERIAL
LOS COLORES DE LOS OBJETOS SE DAN EN 3 VALORES EL PRIMERO ROJO, VERDE Y AZUL LOS VALORES QUE PUEDEN TOMAR VA DEL 0 AL 1
NODO MATERIAL:
Sintaxis: 
Shape{  
   appearance Appearance{  
      material Material{  
         diffuseColor           color_RGB  
         emissiveColor        color_RGB  
         specularColor        color_RGB 
         ambientIntensity   valor  
         transparency         valor  
         shininess               valor  
      }  
   }  
   geometry ...  

DIFFUSE COLOR:representa el color del objeto
EMISSIVE COLOR: fija el brillo del objeto
SPECULAR COLOR: el reflejo del color

NODO ANCHOR
A través del nodo anchor puedes viajar a través del mundo virtual es decir que puedes creas vínculos entre dos o mas mundos vituales para que estos se comuniquen
Sintaxis: 
Anchor{  
  url"dirección_URL 
  description "descripción_del_enlace 
  children[...]  
 
Ejemplo: 
Anchor{  
  url"escalera.wrl"  
  description "Escaleras Flotantes"  
  children[...]  
 
 
CREACION DE FIGURAS COMPLEJAS
NODO COORDINATE : en el nodo cordinate tus marcas los puntos donde se van puntos para hacer la figura compleja
Sintaxis: 
Coordinate { 
        point [ 
             Eje_x  Eje_Y  Eje_Z, 
             Eje_x  Eje_Y  Eje_Z, 
             ... 
             Eje_x  Eje_Y  Eje_Z 
        ] 
    }

NODO POINT SET
Representa un conjunto de puntos en el espacio virtual donde crear la figura compleja
Sintaxis: 
PointSet { 
       coord Coordinate { 
           point [ . . . ] 
       } 
       color Color { 
           color [ . . . ] 
      
} 
   }
NODO INDEX LINE
permite unir los diferentes puntos especificados en su campo
Sintaxis: 
IndexedLineSet{  
    coord Coordinate { 
           point [ . . . ] 
    
} 
    coordIndex  [...]  
    colorPerVertex     valor_lógico 
    color Color { 
           color [ . . . ] 
     } 
    colorIndex   [...] 
 } 


NODO INDESX SET F’ACE
Permite unir los diferentes puntos especificados en su campo
Sintaxis: 
IndexedFaceSet{  
    coord Coordinate { 
           point [ . . . ] 
     } 
    coordIndex  [...]  
   
colorPerVertex     valor_lógico 
    color Color { 
           color [ . . . ] 
     } 
    colorIndex   [...] 
 } 


NODO ELEVATION GRID
En este nodo crea una rejilla con puntos a traves de estos puntos tu puedes darle una altura a cada de los puntos que están en la rejilla
Sintaxis: 
ElevationGrid{ 
xDimension     número_de_columnas(Eje_X) 
xSpacing         valor_real 
zDimension     número_de_filas(Eje_Z) 
zSpacing         valor_real 
height   [altura1, altura2,...,altura(numcolum x numfilas) 
color  Color[...] 
colorPerVertext 
}
Los campos xDimension y zDimension especifican el número de puntos de la cuadrícula en las direcciones X y Z Los campos xSpacing y zSpacing determinan la distancia entre los puntos de la cuadrícula en el eje X y en el eje Z respectivamente. 

El campo height consiste en una ordenación de valores escalares que representan la altura de cada vértice sobre la cuadrícula. Los valores se almacenan de modo que la fila 0 es la primera, la fila 1 la segunda, etc. Dentro de cada fila, los valores de altura se almacenan de modo que la columna 0 es la primera, la 1 la segunda, etc.
NODO BACKGROUND
 
    
Incorpora un plano de suelo sombreado, texturas y cielo escénico. Sólo se emplea el primer nodo Background que se encuentre, debiéndose especificar en el archivo principal. 
 
Sintaxis: 
Backgroud{ 
    groundAngle     [ ] 
    groundColor     [ ] 
    skyAngle          [ ] 
    skyColor          [ ] 
    backUrl           "dirección_URL" 
    bottomURL     "dirección_URL" 
    frontUrl           "dirección_URL" 
    leftUrl              "dirección_URL" 
    rightUrl           "dirección_URL" 
    topUrl              "dirección_URL" 
}







1 comentario:

  1. Me parece muy interesante, pero deberian poner imagenes con los ejemplos para poder ver lo que en realidad hacen, de cualquier manera esta muy bien redactado, mucha suerte.

    ResponderEliminar