tablet.Button6.connect_from(sensor.Button6) tablet.Button7.connect_from(sensor.Button7) tablet.ButtonLeft.connect_from(sensor.Button8) tablet.ButtonRight.connect_from(sensor.Button9) tablet.ButtonMiddle.connect_from(sensor.Button10) tablet.ButtonSide.connect_from(sensor.Button11) tablet.ButtonExtra.connect_from(sensor.Button12) tablet.ButtonPen.connect_from(sensor.Button13) tablet.ButtonRubber.connect_from(sensor.Button14) tablet.ButtonBrush.connect_from(sensor.Button15) tablet.ButtonPencil.connect_from(sensor.Button16) tablet.ButtonAirbrush.connect_from(sensor.Button17) tablet.ButtonFinger.connect_from(sensor.Button18) tablet.ButtonMouse.connect_from(sensor.Button19) tablet.ButtonLens.connect_from(sensor.Button20) tablet.ButtonTouch.connect_from(sensor.Button21) tablet.ButtonStylus.connect_from(sensor.Button22) tablet.ButtonStylus2.connect_from(sensor.Button23) tablet.Proximity.connect_from(sensor.Button24) tablet.Matrix.connect_from(sensor.Matrix) # set up viewing window = avango.osg.viewer.nodes.GraphicsWindow() camera = avango.osg.viewer.nodes.Camera() camera.Window.value = window viewer = avango.osg.viewer.nodes.Viewer() viewer.MasterCamera.value = camera viewer.Scene.value = transform # run evaluation and render loop viewer.run()
soundtraverser.Traverse.value = True # set up trackball mover trackball = avango.moving.nodes.Trackball() trackball.Direction.connect_from(window.MousePositionNorm) trackball.RotateTrigger.connect_from(events.MouseButtons_OnlyLeft) trackball.ZoomTrigger.connect_from(events.MouseButtons_LeftAndRight) trackball.PanTrigger.connect_from(events.MouseButtons_OnlyRight) trackball.Matrix.value = camera.ViewerTransform.value trackball.CenterTransform.value = \ avango.osg.make_scale_mat(0.1, 0.1, 0.1) * \ avango.osg.make_trans_mat(0, 0, -0.6) camera.ViewerTransform.connect_from(trackball.Matrix) openal_renderer.ListenerPosition.connect_from(camera.ViewerTransform) # render a frame to update bounding spheres and scale model to fit in window viewer.frame() scale = 0.08 / obj.get_bounding_sphere().radius() obj_trans.Matrix.value = avango.osg.make_scale_mat(scale, scale, scale) viewer.frame() # run evaluation and render loop stereosound.Play.value = True monosound.Play.value = True viewer.frame() viewer.run()