def setup_world(self): viz.setOption('viz.fullscreen.monitor', 1) #viz.setOption('viz.window.width', 2560) #viz.setOption('viz.window.height', 1040) #viz.setMultiSample(4) #viz.MainWindow.clip(0.01, 500) #viz.vsync(1) vizconfig.register(nvis.nvisorSX111()) viz.go(viz.FULLSCREEN)
def __init__(self): # make this a configurable node, so we can edit some parameters vizconfig.Configurable.__init__(self, 'Sound Manager') self._soundDict = {} # remove the activation key # self._vizconfigWindow = vizconfig.getConfigWindow('sound manager') # self._vizconfigWindow.setActivationKey(None) # Automatically register configurable vizconfig.register(self)
def __init__(self, cfg, enabled=1): type = cfg['type'] offset = cfg['offset'] overlap = cfg['overlap'] fov = cfg['fov'] #self.hmdstats = self.HMDStats(offset, overlap) self.enabled = enabled if enabled: if 'nvis' == type: import nvis self.hmd = nvis.nvisorSX111() #vizconfig.register(self.hmd) print "HMD type: NVIS SX111" print '*** Offset:' + str(viz.MainWindow.getViewOffset()) elif 'oculus' == type: import oculus self.hmd = oculus.Rift() print "HMD type: Oculus Rift" #vizconfig.register(self.hmd) #self.updateOverlap(self.hmdstats.overlap-self.hmd._overlap) else: print "Unsupported HMD type when starting HMD" sys.exit(1) import vizconfig vizconfig.register(self.hmd) if (overlap > -1): self.updateOverlap(self.hmdstats.overlap - self.hmd._overlap) else: defaultOverlap = 100 self.hmdstats = self.HMDStats(viz.MainWindow.getViewOffset, defaultOverlap) #print 'After: ' + str(viz.MainWindow.getViewOffset()) + str(viz.MainWindow.stereoOverlap()) #self.hmdstats = self.HMDStats(viz.MainWindow.getViewOffset, viz.MainWindow.stereoOverlap) else: self.hmd = None print "HMD disabled"
def __init__(self, cfg, enabled=1): type = cfg['type'] offset = cfg['offset'] overlap = cfg['overlap'] fov = cfg['fov'] #self.hmdstats = self.HMDStats(offset, overlap) self.enabled = enabled if enabled: if 'nvis' == type: import nvis self.hmd = nvis.nvisorSX111() #vizconfig.register(self.hmd) print "HMD type: NVIS SX111" print '*** Offset:' + str( viz.MainWindow.getViewOffset() ) elif 'oculus' == type: import oculus self.hmd = oculus.Rift() print "HMD type: Oculus Rift" #vizconfig.register(self.hmd) #self.updateOverlap(self.hmdstats.overlap-self.hmd._overlap) else: print "Unsupported HMD type when starting HMD" sys.exit(1) import vizconfig vizconfig.register(self.hmd) if(overlap > -1 ): self.updateOverlap(self.hmdstats.overlap-self.hmd._overlap) else: defaultOverlap = 100 self.hmdstats = self.HMDStats(viz.MainWindow.getViewOffset, defaultOverlap) #print 'After: ' + str(viz.MainWindow.getViewOffset()) + str(viz.MainWindow.stereoOverlap()) #self.hmdstats = self.HMDStats(viz.MainWindow.getViewOffset, viz.MainWindow.stereoOverlap) else: self.hmd = None print "HMD disabled"
def main(): viz.setOption('viz.fullscreen.monitor', 1) viz.setOption('viz.window.width', 2 * 640) viz.setOption('viz.window.height', 480) viz.setMultiSample(4) viz.MainWindow.clip(0.01, 500) vizconfig.register(nvis.nvisorSX111()) viz.go(viz.FULLSCREEN) piazza = viz.addChild('piazza.osgb') mocap = phasespace.Mocap('192.168.1.230') head = mocap.track_rigid('Resources/hmd-nvis.rb', center_markers=(0, 5)) head.link_pose(viz.MainView) glove = mocap.track_points([8, 9, 10]) paddle = mocap.track_rigid({ 17: (0, 0, 1), 19: (0, 0, 0), 20: (1, 0, 0), 22: (0, 1, 0), }) mocap.start_thread() #mocap.start_timer() def log_mocap(timer_id): print 'glove#9 pos {0[1]:.2f} {0[1]:.2f} {0[2]:.2f}'.format( *glove.get_marker(9)) print 'head pos {0[0]:.2f} {0[1]:.2f} {0[2]:.2f}, quat {1[0]:.3f} {1[1]:.3f} {1[2]:.3f} {1[3]:.3f}'.format( *head.get_pose()) print 'paddle pos {0[0]:.2f} {0[1]:.2f} {0[2]:.2f}, quat {1[0]:.3f} {1[1]:.3f} {1[2]:.3f} {1[3]:.3f}'.format( *paddle.get_pose()) viz.callback(viz.TIMER_EVENT, log_mocap) viz.starttimer(0, 1, viz.FOREVER) def keydown(*args): head.reset() paddle.reset() viz.callback(viz.KEYDOWN_EVENT, keydown)
def getNavigator(): joystickConnected = checkJoystick() oculusConnected = checkOculus() if oculusConnected and joystickConnected: nav = Joyculus() elif joystickConnected: nav = Joystick() # Display joystick information in config window vizconfig.register(nav.getSensor()) vizconfig.getConfigWindow().setWindowVisible(True) elif oculusConnected: nav = Oculus() else: nav = KeyboardMouse() nav.setAsMain() return nav
def main(): viz.setOption('viz.fullscreen.monitor', 1) viz.setOption('viz.window.width', 2 * 640) viz.setOption('viz.window.height', 480) viz.setMultiSample(4) viz.MainWindow.clip(0.01, 500) vizconfig.register(nvis.nvisorSX111()) viz.go(viz.FULLSCREEN) piazza = viz.addChild('piazza.osgb') mocap = phasespace.Mocap('192.168.1.230') head = mocap.track_rigid('Resources/hmd-nvis.rb', center_markers=(0, 5)) head.link_pose(viz.MainView) glove = mocap.track_points([8, 9, 10]) paddle = mocap.track_rigid({ 17:(0, 0, 1), 19:(0, 0, 0), 20:(1, 0, 0), 22:(0, 1, 0), }) mocap.start_thread() #mocap.start_timer() def log_mocap(timer_id): print 'glove#9 pos {0[1]:.2f} {0[1]:.2f} {0[2]:.2f}'.format(*glove.get_marker(9)) print 'head pos {0[0]:.2f} {0[1]:.2f} {0[2]:.2f}, quat {1[0]:.3f} {1[1]:.3f} {1[2]:.3f} {1[3]:.3f}'.format(*head.get_pose()) print 'paddle pos {0[0]:.2f} {0[1]:.2f} {0[2]:.2f}, quat {1[0]:.3f} {1[1]:.3f} {1[2]:.3f} {1[3]:.3f}'.format(*paddle.get_pose()) viz.callback(viz.TIMER_EVENT, log_mocap) viz.starttimer(0, 1, viz.FOREVER) def keydown(*args): head.reset() paddle.reset() viz.callback(viz.KEYDOWN_EVENT, keydown)
def __init__(self, cfg, enabled=True): type = cfg['type'] offset = cfg['offset'] overlap = cfg['overlap'] fov = cfg['fov'] self.enabled = enabled self.hmd = None if not enabled: print 'HMD disabled' return if 'nvis' == type: import nvis self.hmd = nvis.nvisorSX111() print 'HMD type: NVIS SX111' elif 'oculus' == type: import oculus self.hmd = oculus.Rift() print 'HMD type: Oculus Rift' else: raise RuntimeError('Unsupported HMD type when starting HMD') vizconfig.register(self.hmd) if overlap < 0: overlap = 100 self.stats = HMD.Stats(viz.MainWindow.getViewOffset, overlap) amount = self.stats.overlap - self.hmd._overlap self.hmd._overlap += amount offset = (self.hmd._hfov - self.hmd._overlap) / 2.0 viz.MainWindow.setViewOffset( viz.Matrix.euler(-offset, 0.0, self.hmd._leftRollShift), eye=viz.LEFT_EYE) viz.MainWindow.setViewOffset( viz.Matrix.euler( offset, 0.0, self.hmd._rightRollShift), eye=viz.RIGHT_EYE) self.stats.offset = offset self.stats.overlap = self.hmd._overlap print 'Overlap', self.stats.overlap, 'Offset', self.stats.offset
def registerConfig(self): """Registers this tracker with the vizconfig window associated with the wrapper's configuration file. """ vizconfig.register(self, window='Embedded Menu Config', name='Utility Menu')