/* The DIVE software is covered by a license. The use of the software */ /* represents acceptance of the terms and conditions in the license. */ /* ****************************************************************** */ /* Copyright (c) 1993, Swedish Institute of Computer Science */ /*-------------------------------------------------------------------------- File: CHI.vr Project: DIVE Copyright: SICS Version: $Id: CHI.vr,v 1.1.1.1 1995/04/03 11:52:22 uid7209 Exp $ --------------------------------------------------------------------------*/ #include "dive.vh" #include "gateway.vh" world "blocks.sics.se" { info "Simple block world." start v -10 2 -20 min v -1e+20 0 -1e+20 max v 1e+20 1e+20 1e+20 background 0.0 0.0 0.0 % multicast "233.17.65.122" } object { material "CHECK_M" name "floor" translation v -20 0 -20 nograsp on nobackface on view 0 { N_M_POLY 100 400 0 N_POLY 4 v -50 0 -50 v -40 0 -50 v -40 0 -40 v -50 0 -40 N_POLY 4 v -50 0 -40 v -50 0 -30 v -40 0 -30 v -40 0 -40 N_POLY 4 v -50 0 -30 v -40 0 -30 v -40 0 -20 v -50 0 -20 N_POLY 4 v -50 0 -20 v -50 0 -10 v -40 0 -10 v -40 0 -20 N_POLY 4 v -50 0 -10 v -40 0 -10 v -40 0 0 v -50 0 0 N_POLY 4 v -50 0 0 v -50 0 10 v -40 0 10 v -40 0 0 N_POLY 4 v -50 0 10 v -40 0 10 v -40 0 20 v -50 0 20 N_POLY 4 v -50 0 20 v -50 0 30 v -40 0 30 v -40 0 20 N_POLY 4 v -50 0 30 v -40 0 30 v -40 0 40 v -50 0 40 N_POLY 4 v -50 0 40 v -50 0 50 v -40 0 50 v -40 0 40 N_POLY 4 v -40 0 -50 v -40 0 -40 v -30 0 -40 v -30 0 -50 N_POLY 4 v -40 0 -40 v -30 0 -40 v -30 0 -30 v -40 0 -30 N_POLY 4 v -40 0 -30 v -40 0 -20 v -30 0 -20 v -30 0 -30 N_POLY 4 v -40 0 -20 v -30 0 -20 v -30 0 -10 v -40 0 -10 N_POLY 4 v -40 0 -10 v -40 0 0 v -30 0 0 v -30 0 -10 N_POLY 4 v -40 0 0 v -30 0 0 v -30 0 10 v -40 0 10 N_POLY 4 v -40 0 10 v -40 0 20 v -30 0 20 v -30 0 10 N_POLY 4 v -40 0 20 v -30 0 20 v -30 0 30 v -40 0 30 N_POLY 4 v -40 0 30 v -40 0 40 v -30 0 40 v -30 0 30 N_POLY 4 v -40 0 40 v -30 0 40 v -30 0 50 v -40 0 50 N_POLY 4 v -30 0 -50 v -20 0 -50 v -20 0 -40 v -30 0 -40 N_POLY 4 v -30 0 -40 v -30 0 -30 v -20 0 -30 v -20 0 -40 N_POLY 4 v -30 0 -30 v -20 0 -30 v -20 0 -20 v -30 0 -20 N_POLY 4 v -30 0 -20 v -30 0 -10 v -20 0 -10 v -20 0 -20 N_POLY 4 v -30 0 -10 v -20 0 -10 v -20 0 0 v -30 0 0 N_POLY 4 v -30 0 0 v -30 0 10 v -20 0 10 v -20 0 0 N_POLY 4 v -30 0 10 v -20 0 10 v -20 0 20 v -30 0 20 N_POLY 4 v -30 0 20 v -30 0 30 v -20 0 30 v -20 0 20 N_POLY 4 v -30 0 30 v -20 0 30 v -20 0 40 v -30 0 40 N_POLY 4 v -30 0 40 v -30 0 50 v -20 0 50 v -20 0 40 N_POLY 4 v -20 0 -50 v -20 0 -40 v -10 0 -40 v -10 0 -50 N_POLY 4 v -20 0 -40 v -10 0 -40 v -10 0 -30 v -20 0 -30 N_POLY 4 v -20 0 -30 v -20 0 -20 v -10 0 -20 v -10 0 -30 N_POLY 4 v -20 0 -20 v -10 0 -20 v -10 0 -10 v -20 0 -10 N_POLY 4 v -20 0 -10 v -20 0 0 v -10 0 0 v -10 0 -10 N_POLY 4 v -20 0 0 v -10 0 0 v -10 0 10 v -20 0 10 N_POLY 4 v -20 0 10 v -20 0 20 v -10 0 20 v -10 0 10 N_POLY 4 v -20 0 20 v -10 0 20 v -10 0 30 v -20 0 30 N_POLY 4 v -20 0 30 v -20 0 40 v -10 0 40 v -10 0 30 N_POLY 4 v -20 0 40 v -10 0 40 v -10 0 50 v -20 0 50 N_POLY 4 v -10 0 -50 v 0 0 -50 v 0 0 -40 v -10 0 -40 N_POLY 4 v -10 0 -40 v -10 0 -30 v 0 0 -30 v 0 0 -40 N_POLY 4 v -10 0 -30 v 0 0 -30 v 0 0 -20 v -10 0 -20 N_POLY 4 v -10 0 -20 v -10 0 -10 v 0 0 -10 v 0 0 -20 N_POLY 4 v -10 0 -10 v 0 0 -10 v 0 0 0 v -10 0 0 N_POLY 4 v -10 0 0 v -10 0 10 v 0 0 10 v 0 0 0 N_POLY 4 v -10 0 10 v 0 0 10 v 0 0 20 v -10 0 20 N_POLY 4 v -10 0 20 v -10 0 30 v 0 0 30 v 0 0 20 N_POLY 4 v -10 0 30 v 0 0 30 v 0 0 40 v -10 0 40 N_POLY 4 v -10 0 40 v -10 0 50 v 0 0 50 v 0 0 40 N_POLY 4 v 0 0 -50 v 0 0 -40 v 10 0 -40 v 10 0 -50 N_POLY 4 v 0 0 -40 v 10 0 -40 v 10 0 -30 v 0 0 -30 N_POLY 4 v 0 0 -30 v 0 0 -20 v 10 0 -20 v 10 0 -30 N_POLY 4 v 0 0 -20 v 10 0 -20 v 10 0 -10 v 0 0 -10 N_POLY 4 v 0 0 -10 v 0 0 0 v 10 0 0 v 10 0 -10 N_POLY 4 v 0 0 0 v 10 0 0 v 10 0 10 v 0 0 10 N_POLY 4 v 0 0 10 v 0 0 20 v 10 0 20 v 10 0 10 N_POLY 4 v 0 0 20 v 10 0 20 v 10 0 30 v 0 0 30 N_POLY 4 v 0 0 30 v 0 0 40 v 10 0 40 v 10 0 30 N_POLY 4 v 0 0 40 v 10 0 40 v 10 0 50 v 0 0 50 N_POLY 4 v 10 0 -50 v 20 0 -50 v 20 0 -40 v 10 0 -40 N_POLY 4 v 10 0 -40 v 10 0 -30 v 20 0 -30 v 20 0 -40 N_POLY 4 v 10 0 -30 v 20 0 -30 v 20 0 -20 v 10 0 -20 N_POLY 4 v 10 0 -20 v 10 0 -10 v 20 0 -10 v 20 0 -20 N_POLY 4 v 10 0 -10 v 20 0 -10 v 20 0 0 v 10 0 0 N_POLY 4 v 10 0 0 v 10 0 10 v 20 0 10 v 20 0 0 N_POLY 4 v 10 0 10 v 20 0 10 v 20 0 20 v 10 0 20 N_POLY 4 v 10 0 20 v 10 0 30 v 20 0 30 v 20 0 20 N_POLY 4 v 10 0 30 v 20 0 30 v 20 0 40 v 10 0 40 N_POLY 4 v 10 0 40 v 10 0 50 v 20 0 50 v 20 0 40 N_POLY 4 v 20 0 -50 v 20 0 -40 v 30 0 -40 v 30 0 -50 N_POLY 4 v 20 0 -40 v 30 0 -40 v 30 0 -30 v 20 0 -30 N_POLY 4 v 20 0 -30 v 20 0 -20 v 30 0 -20 v 30 0 -30 N_POLY 4 v 20 0 -20 v 30 0 -20 v 30 0 -10 v 20 0 -10 N_POLY 4 v 20 0 -10 v 20 0 0 v 30 0 0 v 30 0 -10 N_POLY 4 v 20 0 0 v 30 0 0 v 30 0 10 v 20 0 10 N_POLY 4 v 20 0 10 v 20 0 20 v 30 0 20 v 30 0 10 N_POLY 4 v 20 0 20 v 30 0 20 v 30 0 30 v 20 0 30 N_POLY 4 v 20 0 30 v 20 0 40 v 30 0 40 v 30 0 30 N_POLY 4 v 20 0 40 v 30 0 40 v 30 0 50 v 20 0 50 N_POLY 4 v 30 0 -50 v 40 0 -50 v 40 0 -40 v 30 0 -40 N_POLY 4 v 30 0 -40 v 30 0 -30 v 40 0 -30 v 40 0 -40 N_POLY 4 v 30 0 -30 v 40 0 -30 v 40 0 -20 v 30 0 -20 N_POLY 4 v 30 0 -20 v 30 0 -10 v 40 0 -10 v 40 0 -20 N_POLY 4 v 30 0 -10 v 40 0 -10 v 40 0 0 v 30 0 0 N_POLY 4 v 30 0 0 v 30 0 10 v 40 0 10 v 40 0 0 N_POLY 4 v 30 0 10 v 40 0 10 v 40 0 20 v 30 0 20 N_POLY 4 v 30 0 20 v 30 0 30 v 40 0 30 v 40 0 20 N_POLY 4 v 30 0 30 v 40 0 30 v 40 0 40 v 30 0 40 N_POLY 4 v 30 0 40 v 30 0 50 v 40 0 50 v 40 0 40 N_POLY 4 v 40 0 -50 v 40 0 -40 v 50 0 -40 v 50 0 -50 N_POLY 4 v 40 0 -40 v 50 0 -40 v 50 0 -30 v 40 0 -30 N_POLY 4 v 40 0 -30 v 40 0 -20 v 50 0 -20 v 50 0 -30 N_POLY 4 v 40 0 -20 v 50 0 -20 v 50 0 -10 v 40 0 -10 N_POLY 4 v 40 0 -10 v 40 0 0 v 50 0 0 v 50 0 -10 N_POLY 4 v 40 0 0 v 50 0 0 v 50 0 10 v 40 0 10 N_POLY 4 v 40 0 10 v 40 0 20 v 50 0 20 v 50 0 10 N_POLY 4 v 40 0 20 v 50 0 20 v 50 0 30 v 40 0 30 N_POLY 4 v 40 0 30 v 40 0 40 v 50 0 40 v 50 0 30 N_POLY 4 v 40 0 40 v 50 0 40 v 50 0 50 v 40 0 50 } } object { maj_descr "house" translation v -25 0 -20 nograsp on subs object { maj_descr "ceiling" material "GREY_M" view 0 { N_M_POLY 5 16 0 N_POLY 3 v 0 10 0 v -5 7.5 -5 v -5 7.5 5 N_POLY 3 v 0 10 0 v -5 7.5 5 v 5 7.5 5 N_POLY 3 v 0 10 0 v 5 7.5 5 v 5 7.5 -5 N_POLY 3 v 0 10 0 v 5 7.5 -5 v -5 7.5 -5 N_POLY 4 v -5 7.5 -5 v 5 7.5 -5 v 5 7.5 5 v -5 7.5 5 } } subs object { maj_descr "corner post" material "GREY_M" view 0 { RBOX v -5 0 5 v -4 7.5 4 } } subs object { maj_descr "corner post" material "GREY_M" view 0 { RBOX v 5 0 5 v 4 7.5 4 } } subs object { maj_descr "corner post" material "GREY_M" view 0 { RBOX v 5 0 -5 v 4 7.5 -4 } } subs object { maj_descr "corner post" material "GREY_M" view 0 { RBOX v -5 0 -5 v -4 7.5 -4 } } } object { translation v 15 0.0 -50 eulerxyz v 0 2.3561945 0 nograsp on pos_gateway("http://www.sics.se/dive/data/pool.vr", "Pool", "GATEWAY_M", "WHEAT_M", "GREEN_M", -128, 4, 133) } object { translation v 15 0.0 20 eulerxyz v 0 0.78539816 0 nograsp on pos_gateway("http://www.sics.se/dive/data/sics.vr", "Sics hub", "GATEWAY_M", "WHEAT_M", "GREEN_M", -53, 1.8, 4.0) } object { translation v 15 0.0 -15.0 fixedxyz v 0.0 1.5707963 0.0 cool_invisible_pos_gateway("http://www.sics.se/dive/data/dive_town.vr", "DIVE Town", "WHEAT_M", "BOTTLE_GREEN_M", "GREEN_M", -7.0, 1.8, -7.7) } object { translation v -10.5 1 12.5 material "RED_NEON_M" view 0 { RBOX v -1 -1 -1 v 1 1 1 } } object { translation v -7.5 1 12.5 material "BLUE_NEON_M" view 0 { RBOX v -1 -1 -1 v 1 1 1 } } object { translation v -9 1 9.5 material "YELLOW_M" view 0 { RBOX v -1 -1 -1 v 1 1 1 } } object { translation v -8 4 12 eulerxyz v 0 0.785 0 material "GREEN_M" view 0 { RBOX v -1 -1 -1 v 1 1 1 } } object { maj_descr "mountains" nograsp on subs object { translation v -50 0 -130 rotation v -0.173648 0 -0.984808 v 0 1 0 v 0.984808 0 -0.173648 subs object { material "MEDIUM_FOREST_GREEN" view 0 { N_M_POLY 3 9 0 N_POLY 3 v -32.0403 8 -143.321 v -53.473 0 -149.696 v -50 0 -130 N_POLY 3 v -32.0403 8 -143.321 v -12.3442 0 -146.794 v -53.473 0 -149.696 N_POLY 3 v -32.0403 8 -143.321 v -50 0 -130 v -12.3442 0 -146.794 } } } subs object { translation v -105 0 -70 rotation v 0.642788 0 0.766044 v 0 1 0 v -0.766044 0 0.642788 subs object { material "DIM_GRAY" view 0 { N_M_POLY 3 9 0 N_POLY 3 v -113.893 9 -49.4838 v -92.1442 0 -54.6791 v -105 0 -70 N_POLY 3 v -113.893 9 -49.4838 v -129.214 0 -36.6281 v -92.1442 0 -54.6791 N_POLY 3 v -113.893 9 -49.4838 v -105 0 -70 v -129.214 0 -36.6281 } } } subs object { translation v -170 0 -30 rotation v 0.642788 0 -0.766044 v 0 1 0 v 0.766044 0 0.642788 subs object { material "KHAKI_M" view 0 { N_M_POLY 3 9 0 N_POLY 3 v -148.251 12 -24.8047 v -157.144 0 -45.3209 v -170 0 -30 N_POLY 3 v -148.251 12 -24.8047 v -132.93 0 -11.9489 v -157.144 0 -45.3209 N_POLY 3 v -148.251 12 -24.8047 v -170 0 -30 v -132.93 0 -11.9489 } } } subs object { translation v -100 0 -100 rotation v 1 0 0 v 0 1 0 v 0 0 1 subs object { material "GREY_BROWN_M" view 0 { N_M_POLY 3 9 0 N_POLY 3 v -90 10 -80 v -80 0 -100 v -100 0 -100 N_POLY 3 v -90 10 -80 v -90 0 -60 v -80 0 -100 N_POLY 3 v -90 10 -80 v -100 0 -100 v -90 0 -60 } } } } object { maj_descr "conference table" translation v -26.5 0 -21 nograsp on subs object { maj_descr "surface" material "WHITE_M" view 0 { RBOX v 0.0 0.9 0.0 v 3.5 0.95 1.75 } behaviour { arc {0 -> 0 signal INTERACTION_SIGNAL type DIVE_IA_SELECT behav_signal 1 id 1 } } } subs object { maj_descr "leg" material "BROWN_M" view 0 { RBOX v 0.3 0.0 0.1 v 0.35 0.9 0.15 } } subs object { maj_descr "leg" material "BROWN_M" view 0 { RBOX v 3.15 0.0 0.1 v 3.2 0.9 0.15 } } subs object { maj_descr "leg" material "BROWN_M" view 0 { RBOX v 3.15 0.0 1.6 v 3.2 0.9 1.65 } } subs object { maj_descr "leg" material "BROWN_M" view 0 { RBOX v 0.3 0.0 1.6 v 0.35 0.9 1.65 } } } object { translation v 0 2 -20 subs object { id 2 maj_descr "blue box" material "BLUE_NEON_M" view 0 { RBOX v 0 0 0 v 1 1 1 } behaviour { arc {0 -> 0 signal INTERACTION_SIGNAL type DIVE_IA_SELECT behav_signal 1 id 3 } arc {1 -> 1 signal INTERACTION_SIGNAL type DIVE_IA_SELECT behav_signal 1 id 3 } arc {0 -> 1 signal BEHAVIOUR_SIGNAL type 1 wireframe on } arc {1 -> 0 signal BEHAVIOUR_SIGNAL type 1 wireframe off } } } subs object { id 3 maj_descr "kalle" collision on nograsp on maj_descr "sphere 1" material "WHITE_M" wireframe on visibility off translation v 0.5 0.5 0.5 view 0 { SPHERE 1.0 1.0 1.0 } behaviour { arc {0 -> 1 signal BEHAVIOUR_SIGNAL type 1 visibility on } arc {1 -> 0 signal INTERACTION_SIGNAL type DIVE_IA_SELECT visibility off } arc {0 -> 0 signal COLLISION_SIGNAL type 1 behav_signal 1 id 2 } arc {1 -> 1 signal COLLISION_SIGNAL type 1 behav_signal 1 id 2 } arc {0 -> 0 signal COLLISION_SIGNAL type 2 behav_signal 1 id 2 } arc {1 -> 1 signal COLLISION_SIGNAL type 2 behav_signal 1 id 2 } } } } object { translation v -2 3 -20 subs object { id 4 maj_descr "red box" material "RED_NEON_M" view 0 { RBOX v 0 0 0 v 1 1 1 } behaviour { arc {0 -> 0 signal INTERACTION_SIGNAL type DIVE_IA_SELECT behav_signal 1 id 5 } arc {1 -> 1 signal INTERACTION_SIGNAL type DIVE_IA_SELECT behav_signal 1 id 5 } arc {0 -> 1 signal BEHAVIOUR_SIGNAL type 1 wireframe on } arc {1 -> 0 signal BEHAVIOUR_SIGNAL type 1 wireframe off } } } subs object { id 5 maj_descr "kalle" collision on nograsp on maj_descr "sphere 2" material "WHITE_M" wireframe on visibility off translation v 0.5 0.5 0.5 view 0 { SPHERE 1.0 1.0 1.0 } behaviour { arc {0 -> 1 signal BEHAVIOUR_SIGNAL type 1 visibility on } arc {1 -> 0 signal INTERACTION_SIGNAL type 1 visibility off } arc {0 -> 0 signal COLLISION_SIGNAL type 1 behav_signal 1 id 4 } arc {1 -> 1 signal COLLISION_SIGNAL type 1 behav_signal 1 id 4 } arc {0 -> 0 signal COLLISION_SIGNAL type 2 behav_signal 1 id 4 } arc {1 -> 1 signal COLLISION_SIGNAL type 2 behav_signal 1 id 4 } } } }