media @ VU
[]
readme
course
preface
I
1
2
II
3
4
III
5
6
7
IV
8
9
10
V
11
12
afterthoughts
appendix
references
examples
resources
_
vr-object-rif-cwi-3rdfloor.vr
(wrl
)
[ flux /
bitmanagement /
cortona /
octaga
]
#@extern vr/extern/proto/lights.wrl
#@extern vr/extern/blaxxun/HUD.wrl
#@proto vr/proto/blaxxun/BlaxxunZone.wrl
#@proto vr/extern/blaxxun/SharedEvent.wrl
#@proto vr/extern/proto/object/box.wrl
#@proto vr/extern/proto/rif/interface/window.wrl
#@proto vr/extern/proto/rif/interface/arm.wrl
#@proto vr/extern/proto/rif/interface/editbox.wrl
#@proto vr/extern/proto/rif/interface/plainbox.wrl
#@proto vr/extern/proto/rif/interface/textbox.wrl
#@proto vr/extern/proto/rif/interface/list.wrl
#@proto vr/extern/proto/rif/focusrequester.wrl
#@proto vr/extern/proto/rif/text/break.wrl
#@proto vr/extern/proto/rif/text/line.wrl
#@proto vr/extern/proto/rif/text/text.wrl
lights {}
DEF SharedZone BlaxxunZone {}
<template type=rif/avatarmonitor/>
<template type=rif/gesturefilter/>
<template type=rif/inputhandler/>
<template type=rif/focushandler/>
DEF CONTROL HUD {
children [
SwingingArm {
translation 2 0.5 -2
armLength 0.5
children [
DEF CHATWINDOW Window
{
title "chat"
touchEnabled TRUE
children [
DEF CHATOUTPUT TextBox {
position -0.45 0.45
size 0.9 0.8
transparency 0.5
}
DEF CHATINPUT EditBox
{
position -0.45 -0.375
size 0.9 0.075
transparency 0.5 ## AE
}
FocusRequester {
focusHandler USE FOCUSHANDLER
window USE CHATWINDOW
inputHandler USE CHATINPUT
}
]
}
ROUTE CHATINPUT.lineOutput TO GESTUREFILTER.lineInput
ROUTE GESTUREFILTER.chat TO SharedZone.sendToChat
ROUTE GESTUREFILTER.gesture TO SharedZone.set_myAvatarGesture
ROUTE SharedZone.groupChat TO CHATOUTPUT.lineInput
ROUTE CHATWINDOW.transparency TO CHATOUTPUT.transparency
ROUTE CHATWINDOW.transparency TO CHATINPUT.transparency
]
}
SwingingArm {
translation 2 -0.5 -2
armLength 0.25
children [
DEF USERSWINDOW Window {
title "users"
size 0.5 0.8
## position 0.25 0 ## Gives kaka's
children
[
DEF USERLIST ClickableList {
position -0.2 0.35
size 0.4 0.7
}
]
}
ROUTE USERSWINDOW.transparency TO USERLIST.transparency
ROUTE AVATARMONITOR.avatar_added TO USERLIST.addItem
ROUTE AVATARMONITOR.avatar_removed TO USERLIST.removeItem
ROUTE USERLIST.itemSelected TO AVATARMONITOR.beamTo
]
}
]
}
Switch {
whichChoice -1
choice [
DEF S Shape {
appearance Appearance {
material Material {
diffuseColor
0.5 0.5 1.0
}
}
geometry Sphere { radius 0.5 }
}
DEF C Shape {
appearance Appearance {
material Material {
diffuseColor 0.5 0.5
1.0
}
}
geometry box { size 1 1 1 }
}
DEF P Transform {
rotation 0 0 1 -1.56
children Shape {
appearance Appearance {
material Material
{
diffuseColor 0.5 0.5 1.0
}
}
geometry Cone { bottomRadius 0.5 height 1 }
}
}
]
}
Viewpoint {
description "entrance"
position
0 1.7 5
}
########################################################################
PROTO GroupWithMetaInfo [
eventIn MFNode addChildren
eventIn MFNode removeChildren
exposedField MFNode children
[]
field SFVec3f bboxCenter 0 0 0
field SFVec3f bboxSize -1 -1 -1
# The next 'exposedField' is what's extra...
exposedField SFString metaInfo ""
exposedField MFNode
viewpoints []
] {
Group {
addChildren IS addChildren
removeChildren IS removeChildren
children IS children
bboxCenter
IS bboxCenter
bboxSize IS bboxSize
}
}
########################################################################
DEF CONCLUSION GroupWithMetaInfo {
metaInfo "Conclusions"
viewpoints DEF X Viewpoint
{
description "X"
position -40 1.7 17
}
children Transform {
scale 0.1 0.1 0.1
translation -40 1.5 15
children text {
lines
[
line { size 2 string "Conclusions" }
line { symbol USE S string "Navigation By Query CAN be usefull" }
line { symbol USE S string
"However" }
line { symbol USE C nesting 2 size 0.8 string "Decent navigation needed" }
line { symbol USE C nesting 2 size 0.8
string "Must be able to add annotation dynamically " }
line { symbol USE P nesting 4 size 0.6 string "Either generated or by
users " }
]
}
}
}
#@include vr/object-rif-cwi-lego.vr
DEF COFFEE1 GroupWithMetaInfo {
viewpoints Viewpoint {
position -15 1.6 -30
orientation 0 1 0 1
}
metaInfo "Coffee Machine
1"
children CoffeeCorner { translation -17.62 0.11 -31.13 }
}
DEF COFFEE2 GroupWithMetaInfo {
viewpoints Viewpoint {
position
-22.88 1.6 -3.53
orientation 0 1 0 1.57
}
metaInfo "Coffee Machine 2"
children CoffeeCorner { translation -25.88 0.11 -3.53
}
}
DEF COFFEE3 GroupWithMetaInfo {
viewpoints Viewpoint {
position 24 1.6 2.33
orientation 0 1 0 -1.57
}
metaInfo "Coffee
Machine 3"
children CoffeeCorner { translation 27.08 0.11 2.33 }
}
]
}
Transform {
translation -0.25 2.5 -0.25
children [
DEF SLINGER_TRANS2 Transform {
children [
DEF SLINGER_TRANS1 Transform {
children [
Transform {
translation 0 -2.5 0
children
[
Shape {
geometry Cylinder {
height 5
radius 0.01
}
appearance Appearance {
material Material {
diffuseColor 1 0.8 0.1
}
}
}
]
}
Transform {
translation 0 -5.3 0
children [
Shape {
geometry Sphere {
radius 0.5
}
appearance Appearance {
material Material
{
diffuseColor 1 0.8 0.1
}
}
}
]
}
]
}
]
}
]
}
DEF SLINGER_TIME1 TimeSensor {
cycleInterval 8
loop TRUE
}
DEF SLINGER_INTER1 OrientationInterpolator
{
key [ 0.0 0.25 0.5 0.75 1.0 ]
keyValue [ 0 0 1 0
0 0 1 0.25
0 0 1 0
0 0 1 -0.25
0 0 1 0
]
}
DEF SLINGER_TIME2 TimeSensor {
cycleInterval
5
loop TRUE
}
DEF SLINGER_INTER2 OrientationInterpolator {
key [ 0.0 0.25 0.5 0.75 1.0 ]
keyValue [ 1 0 0 0
1 0 0 0.2
1 0 0 0
1 0 0 -0.2
1 0 0 0
]
}
ROUTE SLINGER_TIME1.fraction_changed TO SLINGER_INTER1.set_fraction
ROUTE SLINGER_INTER1.value_changed
TO SLINGER_TRANS1.set_rotation
ROUTE SLINGER_TIME2.fraction_changed TO SLINGER_INTER2.set_fraction
ROUTE SLINGER_INTER2.value_changed
TO SLINGER_TRANS2.set_rotation
[]
readme
course
preface
I
1
2
II
3
4
III
5
6
7
IV
8
9
10
V
11
12
afterthoughts
appendix
references
examples
resources
_
(C) A. Eliëns
9/8/2006
You may not copy or print any of this material without explicit permission of the author or the publisher.
In case of other copyright issues, contact the author.