View Single Post
  #1  
Old 03-20-2017, 03:39 AM
rajnishv rajnishv is offline
Member
 
Join Date: Jan 2016
Location: Kalina,Sanatcruz(East),Mumbai,Maharashtra,India
Posts: 94
Smile Regarding switching between viewpoints of 2 different vizconnects files

Hi Jeff,
I am using 2 vizconnect in my vizard script.
I am able to switch between 8 viewpoints of the same 1 single vizconnect.
But i am having problem to switch between viewpoint from 1st vizconnect to the viewpoint of the 2nd vizconnect.

I have tested and changed the viewpoints using a single vizconnect using the following code for 8 different viewpoints for same vizconnect:

Code:
import viz
import vizact
import vizconnect
import viztask


# start the vizconnect session stored in the given directory
vizconnect.go("vizconnect_config.py")

# oriMode sets what the viewpoint is resetting to. For example...
# vizconnect.VIEWPOINT_MATCH_DISPLAY
# matches orientation of the display to the orientation of the viewpoint
# 
# vizconnect.VIEWPOINT_MATCH_FEET
# matches orientation of the feet to the orientation of the viewpoint
# 
# vizconnect.VIEWPOINT_MATCH_BASE
# matches orientation of the base object (transport, avatar, tracker) to the orientation of the viewpoint
#
# Similar for posMode
oriMode = vizconnect.VIEWPOINT_MATCH_DISPLAY
posMode = vizconnect.VIEWPOINT_MATCH_FEET

# Add a viewpoint.
vp1 = vizconnect.addViewpoint(	pos=[-13.24803, 12.28260, 8.83578],
								euler=[90, 0, 0],
								posMode=posMode,
								oriMode=oriMode,
								constant=False,
								)
vp2 = vizconnect.addViewpoint(	pos=[-17.24803, 4.28260, 5.83578],
								euler=[90, 0, 0],
								posMode=posMode,
								oriMode=oriMode,
								constant=False,
								)
# Displays are added to viewpoints, the viewpoint will traverse the scenegraph to
# determine if the display is attached to an avatar, tracker, etc in order to
# perform the requested resets.
#vp1.add(vizconnect.getDisplay())



# add an environment
viz.add('piazza.osgb')

display = vizconnect.getDisplay()

def viewTask():
	
	while True:
		vp1.add(display)
		vizconnect.resetViewpoints()
		print'before 1st waitkeydown '
		yield viztask.waitKeyDown(' ')
		vp1.remove(display)
		vp2.add(display)
		vizconnect.resetViewpoints()
		print'before 2nd waitkeydown '
		yield viztask.waitKeyDown(' ')
		vp2.remove(display)
	
viztask.schedule( viewTask() )

For Ex:

1st Vizonnect - vizconnect.go('vizconnectfile 1') with viewpointFirst=vizconnect.addViewpoint(..)


2nd Vizonnect - vizconnect.go('vizconnectfile 2') with viewpointSecond=vizconnect.addViewpoint(...)


Now i have to switch between viewpoints 'viewpointFirst' and 'viewpointSecond' and vice versa.

Note:I am loading a single Vizconnect one at a time using a def function():

Pls assist further

Last edited by rajnishv; 03-20-2017 at 03:43 AM.
Reply With Quote