View Single Post
  #4  
Old 09-24-2009, 12:55 PM
farshizzo farshizzo is offline
WorldViz Team Member
 
Join Date: Mar 2003
Posts: 2,849
Are the coordinates you are passing to the pick function relative to the lower-left corner of the sub-window, or the lower-left corner of the graphics window? The pick function expects coordinates that are relative to the lower-left corner of the graphics window. Here is a simple script showing that picking does work with sub-windows:
Code:
import viz
viz.go()

viz.mouse(0)
viz.clearcolor(viz.GRAY)

#Add sub-windows
window = viz.addWindow(view=viz.addView(scene=2),pos=(0.8,1))
window = viz.addWindow(view=viz.addView(scene=3),pos=(0,1))
window = viz.addWindow(view=viz.addView(scene=4),pos=(0,0.2))
window = viz.addWindow(view=viz.addView(scene=5),pos=(0.8,0.2))

#Add quad to each window
viz.addTexQuad(pos=(0,1.8,2),color=viz.WHITE,scene=1)
viz.addTexQuad(pos=(0,1.8,2),color=viz.RED,scene=2)
viz.addTexQuad(pos=(0,1.8,2),color=viz.GREEN,scene=3)
viz.addTexQuad(pos=(0,1.8,2),color=viz.BLUE,scene=4)
viz.addTexQuad(pos=(0,1.8,2),color=viz.YELLOW,scene=5)

def dopick():
	win = viz.window.select()
	if win:
		node = win.pick()
		if node:
			node.runAction(vizact.sizeTo(size=[2,2,1],time=0.1))
			node.addAction(vizact.sizeTo(size=[1,1,1],time=0.1))
vizact.onmousedown(viz.MOUSEBUTTON_LEFT,dopick)
Reply With Quote