![]() |
|
#1
|
|||
|
|||
|
Coordinates change
Hi, I try to make some program that could add on-the-fly objects by following the path of mouse movement.
I use code like this Code:
PointBall = viz.add('ball.wrl')
PointBall.color(viz.RED)
PointBall.setPosition(e.x , e.y,2)
I also make PivotNavigate by mouse on, but disabled left-button function part. The problem is: when I move the mouse on the screen, those generated objects do not follow the trajectory of the mouse cursor, there are some offset. How can I neglect this, and if I zoom in or zoom out the screen, does this method still apply? Thanks |
|
#2
|
|||
|
|||
|
Try using the <window>.screenToWorld command. Is this what you're looking for?
Code:
import viz
import vizact
viz.go()
viz.link( viz.Mouse,viz.addTexQuad(viz.SCREEN,texture=viz.add('crosshair.png')) )
def addBall():
ball = viz.addChild('ball.wrl',cache=viz.CACHE_CLONE)
line = viz.MainWindow.screenToWorld(viz.mouse.getPosition())
pos = vizmat.MoveAlongVector(line.begin,line.dir,10)
ball.setPosition(pos)
vizact.onmousedown(viz.MOUSEBUTTON_LEFT,addBall)
viz.mouse(viz.OFF)
|
|
#3
|
|||
|
|||
|
Thanks Jeff, That works
|
![]() |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Change textbox color? | renama | Vizard | 2 | 10-19-2010 07:44 PM |
| Change Viewpoint in different scenes | lilio | Vizard | 1 | 08-28-2009 02:56 PM |
| Change model alpha and memory leak | hosier | Vizard | 2 | 06-25-2009 10:55 AM |
| viz.vertex coordinates | lilio | Vizard | 6 | 05-16-2009 04:36 PM |
| Randomly and Continuously Change Avatar's Face Texture | Karla | Vizard | 4 | 08-22-2008 12:14 PM |