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)
Beispiel #3
0
    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
Beispiel #9
0
	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')