....
DEF Kugel Shape {
appearance Appearance {
material Material {
diffuseColor
.1 .1 .1
}
}
geometry Sphere {
radius 1.5
}
}
....
Transform {
scale 2 2 2
children [
USE Kugel
]
}
....
In diesem Beispiel wird eine weiße Kugel definiert, die später in doppelter Originalgröße wiederverwendet wird.
Das definieren von Node-Namen hat noch eine wesentliche Bedeutung in
dynamischen VRML-Szenerien. Darauf wird im Abschnitt über dynamisches
VRML genauer eingegangen.
Die folgende Grafik zeigt die Auswirkungen des LOD mit 5 Detailstufen:
Quelle: The VRML 2.0 Handbook, Silicon Graphics Inc.
Die entsprechenden Nodes werden je nach Detailstufe, von der höchsten
Auflösung bis zur niedrigsten, angeordnet.
Beispiel:
LOD {
center 120 60 -160
range [ 50, 180 ]
levels [
children Shape {
...
}
,
children Shape {
...
}
,
children [ ]
]
}
In diesem Beispiel werden drei Detailstufen angegeben (Abstand: <50,
50-180, >180 vom Punkt (120,60,-160)). Die Kommatas zwischen den
Stufen dienen nur der optischen Abgrenzung und können daher weggelassen
werden.
Der letzte Node ist leer, d.h. bei dieser Entfernung ist das Objekt
nicht zu sehen.
Es gibt zwei wesentliche Dinge zu beachten:
1. Der sichtbare Bereich eines Viewpoints wird im Bogenmaß
angegeben.
2. Ein vorgelagerter Transformation Node beeinflußt den
angegebenen Viewpoint.
Beispiel:
DEF Kamera1 Viewpoint {
position 30 40 -10
orientation -.07 1 0
.04
description ?Nahsicht der Kapelle"
}
Im Feld position wird die Position des Betrachters im Raum angegeben, orientation beschreibt die Drehung (also die Blickrichtung). Die unter description angegebene Beschreibung kann im Browser als Erläuterung dargestellt werden.
Es besteht die Möglichkeit, mehrere Viewpoints einer Szene zu erstellen
(bspw. die besten Betrachterpositionen). Der Benutzer kann sich dann von
einem Viewpoint zum nächsten "Teleportieren lassen" und sich somit
die Mühe sparen, selbst durch die Szene zu navigieren.
Beispiel:
Anchor {
url "beschreibung.html"
description "Beschreibung der Szene"
children [
Shape {
geometry Box { size 1 1 1 }
}
]
}
Im Feld url wird der (absolute oder relative) Pfad zur referenzierten
Datei angegeben. Die Angaben unter description können im Browser angezeigt
werden.
Es ist möglich, mehrere children anzugeben, um an mehreren Stellen
Links einzufügen.