com/
Resumen de la estructura de un archivo
Este archivo es un sumario de la manera en que debe componerse un escenario VRML. Muestra los nodos de agrupamiento
vlidos, los que estn a nivel de raz y los nodos children, junto con algo ms de informacin til.
Nodos de agrupamiento
Los siguientes nodos son de agrupamiento, lo que significa que slo podrn contener otros nodos en su campo children.
Anchor
Collision
LOD
Transform
Billboard
Group
Switch
Nodos Children
Los siguientes nodos son children legalmente, lo que significa que no necesitan estar contenidos dentro de un nodo de
agrupamiento, pero que pueden estarlo. Pueden ir en la raz del archivo, o en cualquier punto del grafo de la escena,
contenidos dentro de alguno de los nodos de agrupamiento descritos arriba.
Anchor
Background
Billboard
Collision
ColorInterpolator
CoordinateInterpol
ator
CylinderSensor
DirectionalLight
Fog
Group
Inline
LOD
NavigationInfo
NormalInterpo
lator
OrientationInte
rpolator
PlaneSensor
PointLight
PositionInterpo
lator
ProximitySenso
r
ScalarInterpola
tor
Script
Shape
Sound
SpotLight
SphereSensor
Switch
TimeSensor
TouchSensor
Transform
Viewpoint
VisibilitySensor
WorldInfo
Child
nodos
redefinidos
con
PROTO
Nodos Bindable
Los siguientes nodos son bindable.
Background
Fog
NavigationInfo
Viewpoint
Nodos Geomtricos
Los siguientes nodos son Geomtricos, y slo pueden estar contenidos dentro del campo geometry de un nodo Shape.
Box
Cone
Cylinder
ElevationGrid
Extrusion
IndexedFaceSet
IndexedLineSet
PointSet
Sphere
Text
Nodos Especiales
Los siguientes nodos son especiales, y slo pueden estar contenidos en determinados campos de determinados nodos.
Node
Appearance
AudioClip
Parent
Shape
Sound
ElevationGrid
IndexedFaceSet
IndexedLineSet
IndexedFaceSet
IndexedLineSet
PointSet
Text
Appearance
Appearance
Appearance
Sound
ElevationGrid
IndexedFaceSet
Appearance
ElevationGrid
IndexedFaceSet
Appearance
Color
Coordinate
FontStyle
ImageTexture
Material
MovieTexture
Normal
PixelTexture
TextureCoordinate
TextureTransform
Field
appearance
source
color
color
color
coord
coord
coord
fontStyle
texture
material
texture
source
normal
normal
texture
texCoord
texCoord
textureTransform
MFNode
MFNode
MFNode
SFString
MFString
MFString
SFVec3f
SFVec3f
addChildren
removeChildren
children
description
parameter
url
bboxCenter
bboxSize
[]
""
[]
[]
0 0 0
-1 -1 -1
SFNode
SFNode
SFNode
material
texture
textureTransform
NULL
NULL
NULL
SFString
SFBool
SFFloat
SFTime
SFTime
MFString
SFTime
SFBool
description
loop
pitch
startTime
stopTime
url
duration_changed
isActive
""
FALSE
1.0
0
0
[]
SFBool
MFFloat
set_bind
groundAngle
[]
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
eventOut
MFColor
MFString
MFString
MFString
MFString
MFString
MFString
MFFloat
MFColor
SFBool
groundColor
backUrl
bottomUrl
frontUrl
leftUrl
rightUrl
topUrl
skyAngle
skyColor
isBound
[]
[]
[]
[]
[]
[]
[]
[]
[0 0 0]
MFNode
MFNode
SFVec3f
MFNode
SFVec3f
SFVec3f
addChildren
removeChildren
axisOfRotation
children
bboxCenter
bboxSize
0 1 0
[]
0 0 0
-1 -1 -1
SFVec3f
size
2 2 2
MFNode
MFNode
MFNode
SFBool
SFVec3f
SFVec3f
SFNode
SFTime
addChildren
removeChildren
children
collide
bboxCenter
bboxSize
proxy
collideTime
MFColor
color
[]
{
SFFloat
MFFloat
MFFloat
SFFloat
set_fraction
key
keyValue
value_changed
[]
[]
SFBool
SFFloat
SFFloat
SFBool
bottom
bottomRadius
height
side
TRUE
1
2
TRUE
MFVec3f
point
[]
set_fraction
key
keyValue
value_changed
[]
[]
}
Billboard
Billboard {
eventIn
eventIn
exposedField
exposedField
field
field
}
Box
Box {
field
}
Collision
Collision {
eventIn
eventIn
exposedField
exposedField
field
field
field
eventOut
}
Color
Color {
exposedField
}
ColorInterpolator
ColorInterpolator
eventIn
exposedField
exposedField
eventOut
}
Cone
Cone {
field
field
field
field
}
Coordinate
Coordinate {
exposedField
}
CoordinateInterpolator
CoordinateInterpolator {
eventIn
SFFloat
exposedField
MFFloat
exposedField
MFVec3f
eventOut
MFVec3f
[]
TRUE
0 0 0
-1 -1 -1
NULL
}
Cylinder
Cylinder {
field
field
field
field
field
}
CylinderSensor
CylinderSensor {
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
eventOut
eventOut
eventOut
}
SFBool
SFFloat
SFFloat
SFBool
SFBool
bottom
height
radius
side
top
SFBool
SFFloat
SFBool
SFFloat
SFFloat
SFFloat
SFBool
SFRotation
SFVec3f
autoOffset
TRUE
diskAngle
0.262
enabled
TRUE
maxAngle
-1
minAngle
0
offset
0
isActive
rotation_changed
trackPoint_changed
DirectionalLight
DirectionalLight {
exposedField
SFFloat
exposedField
SFColor
exposedField
SFVec3f
exposedField
SFFloat
exposedField
SFBool
}
ElevationGrid
ElevationGrid {
eventIn
exposedField
exposedField
exposedField
field
field
field
field
field
field
field
field
field
field
}
Extrusion
Extrusion {
eventIn
eventIn
eventIn
eventIn
field
field
field
field
field
field
field
field
field
field
}
Fog
Fog {
TRUE
2
1
TRUE
TRUE
ambientIntensity
color
direction
intensity
on
0
1 1 1
0 0 -1
1
TRUE
MFFloat
SFNode
SFNode
SFNode
MFFloat
SFBool
SFBool
SFFloat
SFBool
SFBool
SFInt32
SFFloat
SFInt32
SFInt32
set_height
color
normal
texCoord
height
ccw
colorPerVertex
creaseAngle
normalPerVertex
solid
xDimension
xSpacing
zDimension
zSpacing
NULL
NULL
NULL
[]
TRUE
TRUE
0
TRUE
TRUE
0
0.0
0
0.0
MFVec3f
MFRotation
MFVec2f
MFVec3f
SFBool
SFBool
SFBool
SFFloat
MFVec2f
SFBool
MFRotation
MFVec2f
SFBool
MFVec3f
set_crossSection
set_orientation
set_scale
set_spine
beginCap
ccw
convex
creaseAngle
crossSection
endCap
orientation
scale
solid
spine
TRUE
TRUE
TRUE
0
[1 1, 1 -1, -1 -1, -1 1, 1 1]
TRUE
0 0 1 0
1 1
TRUE
[0 0 0, 0 1 0]
eventIn
exposedField
exposedField
exposedField
eventOut
SFBool
SFColor
SFString
SFFloat
SFBool
set_bind
color
fogType
visibilityRange
isBound
1 1 1
"LINEAR"
0
MFString
SFBool
MFString
SFString
SFBool
SFFloat
SFFloat
SFString
SFBool
family
horizontal
justify
language
leftToRight
size
spacing
style
topToBottom
"SERIF"
TRUE
"BEGIN"
""
TRUE
1.0
1.0
"PLAIN"
TRUE
MFNode
MFNode
MFNode
SFVec3f
SFVec3f
addChildren
removeChildren
children
bboxCenter
bboxSize
[]
0 0 0
-1 -1 -1
MFString
SFBool
SFBool
url
repeatS
repeatT
[]
TRUE
TRUE
MFInt32
MFInt32
MFInt32
MFInt32
SFNode
SFNode
SFNode
SFNode
SFBool
MFInt32
SFBool
SFBool
MFInt32
SFFloat
MFInt32
SFBool
SFBool
MFInt32
set_colorIndex
set_coordIndex
set_normalIndex
set_texCoordIndex
color
coord
normal
texCoord
ccw
colorIndex
colorPerVertex
convex
coordIndex
creaseAngle
normalIndex
normalPerVertex
solid
texCoordIndex
NULL
NULL
NULL
NULL
TRUE
[]
TRUE
TRUE
[]
0
[]
TRUE
TRUE
[]
MFInt32
MFInt32
SFNode
SFNode
MFInt32
SFBool
MFInt32
set_colorIndex
set_coordIndex
color
coord
colorIndex
colorPerVertex
coordIndex
NULL
NULL
[]
TRUE
[]
}
FontStyle
FontStyle {
field
field
field
field
field
field
field
field
field
}
Group
Group {
eventIn
eventIn
exposedField
field
field
}
ImageTexture
ImageTexture {
exposedField
field
field
}
IndexedFaceSet
IndexedFaceSet {
eventIn
eventIn
eventIn
eventIn
exposedField
exposedField
exposedField
exposedField
field
field
field
field
field
field
field
field
field
field
}
IndexedLineSet
IndexedLineSet {
eventIn
eventIn
exposedField
exposedField
field
field
field
}
Inline
Inline {
exposedField
field
field
MFString
SFVec3f
SFVec3f
url
bboxCenter
bboxSize
[]
0 0 0
-1 -1 -1
MFNode
SFVec3f
MFFloat
level
center
range
[]
0 0 0
[]
SFFloat
SFColor
SFColor
SFFloat
SFColor
SFFloat
ambientIntensity
diffuseColor
emissiveColor
shininess
specularColor
transparency
0.2
0.8 0.8 0.8
0 0 0
0.2
0 0 0
0
SFBool
SFFloat
SFTime
SFTime
MFString
SFBool
SFBool
SFTime
SFBool
loop
speed
startTime
stopTime
url
repeatS
repeatT
duration_changed
isActive
FALSE
1
0
0
[]
TRUE
TRUE
SFBool
MFFloat
SFBool
SFFloat
MFString
SFFloat
SFBool
set_bind
avatarSize
headlight
speed
type
visibilityLimit
isBound
MFVec3f
vector
[]
set_fraction
key
keyValue
value_changed
[]
[]
set_fraction
key
keyValue
value_changed
[]
[]
image
repeatS
0 0 0
TRUE
}
LOD
LOD {
exposedField
field
field
}
Material
Material {
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
}
MovieTexture
MovieTexture {
exposedField
exposedField
exposedField
exposedField
exposedField
field
field
eventOut
eventOut
}
NavigationInfo
NavigationInfo {
eventIn
exposedField
exposedField
exposedField
exposedField
exposedField
eventOut
}
Normal
Normal {
exposedField
}
NormalInterpolator
NormalInterpolator {
eventIn
SFFloat
exposedField
MFFloat
exposedField
MFVec3f
eventOut
MFVec3f
}
OrientationInterpolator
OrientationInterpolator {
eventIn
SFFloat
exposedField
MFFloat
exposedField
MFRotation
eventOut
SFRotation
}
PixelTexture
PixelTexture {
exposedField
field
SFImage
SFBool
field
SFBool
repeatT
TRUE
SFBool
SFBool
SFVec2f
SFVec2f
SFVec3f
SFBool
SFVec3f
SFVec3f
autoOffset
TRUE
enabled
TRUE
maxPosition
-1 -1
minPosition
0 0
offset
0 0 0
isActive
trackPoint_changed
translation_changed
SFFloat
SFVec3f
SFColor
SFFloat
SFVec3f
SFBool
SFFloat
ambientIntensity
attenuation
color
intensity
location
on
radius
0
1 0 0
1 1 1
1
0 0 0
TRUE
100
SFNode
SFNode
color
coord
NULL
NULL
set_fraction
key
keyValue
value_changed
[]
[]
}
PlaneSensor
PlaneSensor {
exposedField
exposedField
exposedField
exposedField
exposedField
eventOut
eventOut
eventOut
}
PointLight
PointLight {
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
}
PointSet
PointSet {
exposedField
exposedField
}
PositionInterpolator
PositionInterpolator {
eventIn
SFFloat
exposedField
MFFloat
exposedField
MFVec3f
eventOut
SFVec3f
}
ProximitySensor
ProximitySensor {
exposedField
SFVec3f
exposedField
SFVec3f
exposedField
SFBool
eventOut
SFBool
eventOut
SFVec3f
eventOut
SFRotation
eventOut
SFTime
eventOut
SFTime
}
ScalarInterpolator
ScalarInterpolator {
eventIn
SFFloat
exposedField
MFFloat
exposedField
MFFloat
eventOut
SFFloat
}
Script
Script {
exposedField
field
field
MFString
SFBool
SFBool
center
0 0 0
size
0 0 0
enabled
TRUE
isActive
position_changed
orientation_changed
enterTime
exitTime
set_fraction
key
keyValue
value_changed
[]
[]
url
directOutput
mustEvaluate
[]
FALSE
FALSE
default value
Shape
Shape {
exposedField
exposedField
}
appearance
geometry
NULL
NULL
SFVec3f
SFFloat
SFVec3f
SFFloat
SFFloat
SFFloat
SFFloat
SFFloat
SFNode
SFBool
direction
intensity
location
maxBack
maxFront
minBack
minFront
priority
source
spatialize
0 0 1
1
0 0 0
10
10
1
1
0
NULL
TRUE
SFFloat
radius
SFBool
SFBool
SFRotation
SFBool
SFRotation
SFVec3f
autoOffset
TRUE
enabled
TRUE
offset
0 1 0 0
isActive
rotation_changed
trackPoint_changed
SFFloat
SFVec3f
SFFloat
SFColor
SFFloat
SFVec3f
SFFloat
SFVec3f
SFBool
SFFloat
ambientIntensity
attenuation
beamWidth
color
cutOffAngle
direction
intensity
location
on
radius
0
1 0 0
1.570796
1 1 1
0.785398
0 0 -1
1
0 0 0
TRUE
100
MFNode
SFInt32
choice
whichChoice
[]
-1
MFString
SFNode
MFFloat
SFFloat
string
fontStyle
length
maxExtent
[]
NULL
[]
0.0
point
[]
Sound
Sound {
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
field
}
SFNode
SFNode
Sphere
Sphere {
field
}
SphereSensor
SphereSensor {
exposedField
exposedField
exposedField
eventOut
eventOut
eventOut
}
SpotLight
SpotLight {
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
}
Switch
Switch {
exposedField
exposedField
}
Text
Text {
exposedField
exposedField
exposedField
exposedField
}
TextureCoordinate
TextureCoordinate {
exposedField
MFVec2f
}
TextureTransform
TextureTransform {
exposedField
exposedField
exposedField
exposedField
SFVec2f
SFFloat
SFVec2f
SFVec2f
center
rotation
scale
translation
0 0
0
1 1
0 0
SFTime
SFBool
SFBool
SFTime
SFTime
SFTime
SFFloat
SFBool
SFTime
cycleInterval
enabled
loop
startTime
stopTime
cycleTime
fraction_changed
isActive
time
1
TRUE
FALSE
0
0
SFBool
SFVec3f
SFVec3f
SFVec2f
SFBool
SFBool
SFTime
enabled
TRUE
hitNormal_changed
hitPoint_changed
hitTexCoord_changed
isActive
isOver
touchTime
MFNode
MFNode
SFVec3f
MFNode
SFRotation
SFVec3f
SFRotation
SFVec3f
SFVec3f
SFVec3f
addChildren
removeChildren
center
children
rotation
scale
scaleOrientation
translation
bboxCenter
bboxSize
}
TimeSensor
TimeSensor {
exposedField
exposedField
exposedField
exposedField
exposedField
eventOut
eventOut
eventOut
eventOut
}
TouchSensor
TouchSensor {
exposedField
eventOut
eventOut
eventOut
eventOut
eventOut
eventOut
}
Transform
Transform {
eventIn
eventIn
exposedField
exposedField
exposedField
exposedField
exposedField
exposedField
field
field
}
Viewpoint
Viewpoint {
eventIn
SFBool
exposedField
SFFloat
exposedField
SFBool
exposedField
SFRotation
exposedField
SFVec3f
field
SFString
eventOut
SFTime
eventOut
SFBool
}
VisibilitySensor
VisibilitySensor {
exposedField
SFVec3f
exposedField
SFBool
exposedField
SFVec3f
eventOut
SFTime
eventOut
SFTime
eventOut
SFBool
}
WorldInfo
WorldInfo {
field
field
MFString
SFString
set_bind
fieldOfView
jump
orientation
position
description
bindTime
isBound
0 0 0
[]
0 0 1 0
1 1 1
0 0 1 0
0 0 0
0 0 0
-1 -1 -1
0.785398
TRUE
0 0 1 0
0 0 10
""
center
enabled
size
enterTime
exitTime
isActive
0 0 0
TRUE
0 0 0
info
title
[]
""
Las rotaciones
Las rotaciones en VRML funcionan con la regla de la mano derecha.
Imaginar que envuelven con su mano alrededor de uno de los ejes, con el dedo pulgar apuntando en direccin
positiva, la direccin de rotacin positiva es igual que la direccin en que los dedos se envuelven alrededor, es
decir igual que el sentido de las manecillas del reloj en una direccin positiva. Esto es para las rotaciones
sobre cualquier eje, entonces si se quiere rotar un objeto 90 grados fuera de nosotros alrededor del eje X, se
tendr que utilizar en 90 grados la rotacin negativa. Esto tambin aplica a las rotaciones sobre los ejes
arbitrarios.
Conversiones
Los ngulos se miden en radianes, por lo que es necesario hacer una conversin de grados a radianes: (No. de
grados * PI)/180.
Grados
0
45
90
135
180
225
270
315
360
Radianes
0
0.78
1.57
2.36
3.14 (Pi)
3.93
4.71
5.5
6.28 (2*Pi)
SFBool
ste es un valor booleano simple que puede tomar el valor "TRUE" o "FALSE".
SFColor & MFColor
Este campo contiene un color simple conformado por tres nmeros de punto flotante
entre 0 y 1 que corresponden a los valores rojos, verdes y azules de ese color, por
ejemplo 0 1 0 es verde. MFColor es un campo que contiene colores mltiples, por
ejemplo [0 1 0, 1 0 0, 0 0 1].
SFFloat & MFFloat
SFFloat es un valor simple de punto flotante, por ejemplo 7.5. MFFloat son varios
valores de punto flotante, por ejemplo [1.0, 3.4, 76.54].
SFImage
SFImage es una imagen bidimensional, ya sea en color o gris. Consiste de: