#include "column.vh" #include "loudspeaker.vh" #include "gateway.vh" #include "table.vh" #include "microphone.vh" #include "trees.vh" #define MICRO_MCAST "224.1.231.245" #define MICRO_PORT 3465 world "podium.sics.se" { start v 0.0 1.8 0.0 min v -1e+20 0.0 -1e+20 max v 1e+20 1e+20 1e+20 background 0.15 0.3 0.5 multicast "233.17.65.127" } /************* ** The floor **************/ object { material "TREES_GROUND" view 0 { N_POLY 4 v -100 0 -100 v -100 0 100 v 100 0 100 v 100 0 -100 } } /*************** ** Macro to define the stairs ****************/ #define stairs(mat_stairs, length, width) \ subs object { \ material mat_stairs \ view 0 { \ RBOX \ v -((length)/2) 0.0 -(width) \ v ((length)/2) 0.4 0.0 \ } \ } \ subs object { \ material mat_stairs \ view 0 { \ RBOX \ v -((length)/2) 0.0 -(2*(width)) \ v ((length)/2) 0.3 -(width) \ } \ } \ subs object { \ material mat_stairs \ view 0 { \ RBOX \ v -((length)/2) 0.0 -(3*(width)) \ v ((length)/2) 0.2 -(2*(width)) \ } \ } \ subs object { \ material mat_stairs \ view 0 { \ RBOX \ v -((length)/2) 0.0 -(4*(width)) \ v ((length)/2) 0.1 -(3*(width)) \ } \ } /************* ** The auditorium **************/ object { translation v 0.0 0.2 -25.0 eulerxyz v 0.0 3.1415927 0.0 material "BOTTLE_GREEN_M" maj_descr "Podium" realobj on /* The floor */ view 0 { RBOX v -10.0 -0.2 -10.0 v 10.0 0.0 10.0 } /* Both loudspeakers */ subs object { translation v -9.0 0.0 -9.0 eulerxyz v 0.0 0.78539816 0.0 audio_source { multicast MICRO_MCAST port MICRO_PORT } loudspeaker(0.7, 0.7, 2.0) } subs object { translation v 9.0 0.0 -9.0 eulerxyz v 0.0 -0.78539816 0.0 audio_source { multicast MICRO_MCAST port MICRO_PORT } loudspeaker(0.7, 0.7, 2.0) } /* The podium, where the speaker is supposed to stand */ subs object { translation v 0.0 0.5 9.0 subs object { realobj on maj_descr "Podium" material "LIGHT_GREEN_M" view 0 { RBOX v -9.0 -0.5 -1.9 v 9.0 0.0 1.9 } } /* The table and its microphone */ subs object { translation v 0.0 0.0 -0.3 table(0.6, 0.6, 1.5) subs object { translation v 0.0 1.5 0.0 eulerxyz v 0.0 3.1415927 0.0 audio_sink { multicast MICRO_MCAST port MICRO_PORT } angular_microphone() } } /* Both stairs */ subs object { translation v -7.0 -0.5 -1.9 stairs("LIGHT_GREEN_M", 2.0, 0.3) } subs object { translation v 7.0 -0.5 -1.9 stairs("LIGHT_GREEN_M", 2.0, 0.3) } /* 4 columns */ subs object { translation v -8.5 0.0 -1.4 column("LIGHT_GREEN_M","BOTTLE_GREEN_M", 0.2,5.0) } subs object { translation v 8.5 0.0 -1.4 column("LIGHT_GREEN_M","BOTTLE_GREEN_M", 0.2,5.0) } subs object { translation v -8.5 0.0 1.4 column("LIGHT_GREEN_M","BOTTLE_GREEN_M", 0.2,5.0) } subs object { translation v 8.5 0.0 1.4 column("LIGHT_GREEN_M","BOTTLE_GREEN_M", 0.2,5.0) } } } object { translation v -10.0 0.0 -45.0 pine_tree(5.0, "BROWN_M", "BRUSHES_GROUND") } object { translation v -8.0 0.0 -45.0 pine_tree(4.5, "BROWN_M", "BRUSHES_GROUND") } object { translation v -6.0 0.0 -45.0 pine_tree(4.0, "BROWN_M", "BRUSHES_GROUND") } object { translation v -4.0 0.0 -45.0 pine_tree(3.5, "BROWN_M", "BRUSHES_GROUND") } object { translation v -2.0 0.0 -45.0 pine_tree(3.0, "BROWN_M", "BRUSHES_GROUND") } object { translation v 0.0 0.0 -45.0 pine_tree(2.5, "BROWN_M", "BRUSHES_GROUND") } object { translation v 2.0 0.0 -45.0 pine_tree(3.0, "BROWN_M", "BRUSHES_GROUND") } object { translation v 4.0 0.0 -45.0 pine_tree(3.5, "BROWN_M", "BRUSHES_GROUND") } object { translation v 6.0 0.0 -45.0 pine_tree(4.0, "BROWN_M", "BRUSHES_GROUND") } object { translation v 8.0 0.0 -45.0 pine_tree(4.5, "BROWN_M", "BRUSHES_GROUND") } object { translation v 10.0 0.0 -45.0 pine_tree(5.0, "BROWN_M", "BRUSHES_GROUND") } /************* ** The gateway back to mmedia **************/ object { translation v 0.0 0.0 25.0 cool_pos_gateway("http://www.sics.se/dive/data/mmedia","mmedia","GATEWAY_M","WHEAT_M", "BOTTLE_GREEN_M", "GREEN_M", 30.0,1.8,-78) }