Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Einführung in VRML - Teil 2 Advanced Features. 7. 7. 2000AWS 2000 - Jan Schröter2 Inhalt zTypen- und Event-Modell zModularisierungskonzepte zInteraktion.

Ähnliche Präsentationen


Präsentation zum Thema: "Einführung in VRML - Teil 2 Advanced Features. 7. 7. 2000AWS 2000 - Jan Schröter2 Inhalt zTypen- und Event-Modell zModularisierungskonzepte zInteraktion."—  Präsentation transkript:

1 Einführung in VRML - Teil 2 Advanced Features

2 7. 7. 2000AWS 2000 - Jan Schröter2 Inhalt zTypen- und Event-Modell zModularisierungskonzepte zInteraktion zBrowserinteraktion zAnimation

3 7. 7. 2000AWS 2000 - Jan Schröter3 Typen- und Event-Modell Felder eines Knotens zBestehen aus 4 Teilen yFeldtyp (field, exposedField, eventIn, eventOut) yDatentyp (MFNode, SFVec3f,...) yName (translation,...) yDefault-Wert ( 0 0 0, []...)

4 7. 7. 2000AWS 2000 - Jan Schröter4 Typen- und Event-Modell Feldtypen zfield wird nur einmal gesetzt zexposedField kann verändert werden zeventIn Eingang von Events zeventOut Ausgang von Events

5 7. 7. 2000AWS 2000 - Jan Schröter5 Typen- und Event-Modell Event-Konventionen zKonventionen zur Bezeichnung bestimmter Events yPräfix set_ für eventIn (set_on) ySuffix _changed für eventOut (enabled_changed) yPräfix is für Boolean-Ereignisse (isActive) ySuffix Time für Time-Ereignisse (enterTime) ySuffix Children für Manipulation von KindKnoten (addChildren)

6 7. 7. 2000AWS 2000 - Jan Schröter6 Modularisierungskonzepte DEF/USE Jeden Knoten kann mit DEF ein (eindeutiger) Name gegeben werden. z.B.: DEF Baum Transform{... } Benannter Knoten kann mit USE wiederverwendet werden. z.B.: children USE Baum

7 7. 7. 2000AWS 2000 - Jan Schröter7 Modularisierungskonzepte Inline zExterne VRML-Dateien werden über den Inline-Knoten eingebunden. Bsp.: Inline {url foobar.wrl }

8 7. 7. 2000AWS 2000 - Jan Schröter8 Modularisierungskonzepte PROTO zZur Erzeugung eigener Knoten dient das PROTO-Konzept. zZwei Teile: yDeklaration der Felder yDefinition des Objekts

9 7. 7. 2000AWS 2000 - Jan Schröter9 Modularisierungskonzepte PROTO - Beispiel zPROTO Quader[ field SFVec3f Groesse 4 2 1 ] { Box { size IS Groesse } } zZugriff auf Felder mit Schlüsselwort IS. zBenutzung des Objekts nur innerhalb einer Datei

10 7. 7. 2000AWS 2000 - Jan Schröter10 Modularisierungskonzepte EXTERNPROTO zMit EXTERNPROTO können PROTOs aus anderen Dateien benutzt werden. zDazu muß aber die Felddeklaration lokal wiederholt werden. Bsp.: EXTERNPROTO Baum [ field SFColor Blätter 0 1 0 ] http://www.wald.de/baum.wrl

11 7. 7. 2000AWS 2000 - Jan Schröter11 Interaktion ROUTE zMit ROUTE können eventIn- mit eventOut-Feldern verbunden werden zROUTE-Befehle stehen außerhalb der restlichen Knoten-Deklarationen zDie zu verbindenden Knoten müssen mit DEF benannt sein, um sie anzusprechen

12 7. 7. 2000AWS 2000 - Jan Schröter12 Interaktion ROUTE - Beispiel zROUTE Schalter.enabled TO Licht.on zVerbundene Knoten müssen vom gleichen Datentyp sein.

13 7. 7. 2000AWS 2000 - Jan Schröter13 Interaktion Sensoren zUm auf Ereignisse reagieren zu können benutzt man Sensoren, deren Ausgabe dann mit ROUTE in entsprechende Objekte umgeleitet wird. zSensoren sind einer Knoten und seinen evtl. Kindern zugeordnet

14 7. 7. 2000AWS 2000 - Jan Schröter14 Interaktion TouchSensor zReagiert auf Berührung (Anklicken) Benutzung: ROUTE Taste.touchTime TO Musik.set_startTime

15 7. 7. 2000AWS 2000 - Jan Schröter15 Interaktion PoximitySensor zReagiert auf Betreten eines Quaders Bsp: DEF Raum ProximitySensor{ size 10 10 10 } ROUTE Raum.enterTime TO Musik.setStartTime

16 7. 7. 2000AWS 2000 - Jan Schröter16 Interaktion TimeSensor zLäßt eine Uhr ablaufen zWichtig für Animation (später) zWichtige Parameter: yloop: Wenn TRUE, dann zyklisches Ablaufen der Uhr ycycleIntervall: Länge der Zeit, die ablaufen soll in Sekunden

17 7. 7. 2000AWS 2000 - Jan Schröter17 Interaktion TimeSensor - Beispiel zDEF Wecker TimeSensor{ loop TRUE cycleIntervall 60 }... ROUTE Wecker.cycleTime TO Alarm_Ton.startTime

18 7. 7. 2000AWS 2000 - Jan Schröter18 Browserinteraktion Anchor zLinks ins WWW realisierbar mit dem Anchor-Knoten. zReagiert auf Anklicken des Objekts. zParameter yurl - URL der zu ladenden Seite yparameter - zusätzliche Informationen mit target=xxx können Frames angesprochen werden

19 7. 7. 2000AWS 2000 - Jan Schröter19 Animation Interpolatoren zZur Animation (= fließender Veränderung von Objektparametern) benutzt man Interpolatoren. zDiese berechnen den Weg entlang eines Wertepfades mit linearer Interpolation zJede Ecke auf diesem Pfad wird durch ein Wertepaar im key/keyValue-Feld festgelegt.

20 7. 7. 2000AWS 2000 - Jan Schröter20 Animation ColorInterpolator zAnimation von Farbwerten Bsp.: DEF Timer TimeSensor{ cycleIntervall 5.0 loop TRUE } DEF FarbGeber ColorInterpolator{ key [0, 1] keyValue[0 0 0, 1 0 0] } ROUTE Timer.fraction TO FarbGeber.fraction ROUTE FarbGeber.value TO Blinker.color

21 7. 7. 2000AWS 2000 - Jan Schröter21 Animation Weitere Interpolatoren zCoordinateInterpolator yAnimation von 3D-Koordinaten zOrientationInterpolator yAnimation von Rotationen


Herunterladen ppt "Einführung in VRML - Teil 2 Advanced Features. 7. 7. 2000AWS 2000 - Jan Schröter2 Inhalt zTypen- und Event-Modell zModularisierungskonzepte zInteraktion."

Ähnliche Präsentationen


Google-Anzeigen