View Single Post
  #4  
Old 02-11-2009, 06:24 PM
nlfrnassimi nlfrnassimi is offline
Member
 
Join Date: Feb 2009
Posts: 37
I have solved the problem of assigning value to translate, the only problem left is that the right ball jumps when I try to move it but the other 2 works perfect.

import viz

viz.go()

ground = viz.add('tut_ground.wrl')
viz.clearcolor(0.5,0.5,1)
ground.disable(viz.PICKING)

soccerball1 = viz.add('soccerball.ive')
soccerball2 = viz.add('soccerball.ive')
soccerball3 = viz.add('soccerball.ive')

soccerball1.translate(-1,1.5,3)
soccerball2.translate(0,1.5,3)
soccerball3.translate(1,1.5,3)


def mouseclick(button):
global ball
if button == viz.MOUSEBUTTON_LEFT:
pickObj = viz.pick()
if pickObj.valid():
ball = pickObj



def myTranslate(key):
global ball
if not ball:
return
else:
if key == viz.KEY_UP:
ball.translate(0,0.01,0,ball)
elif key == viz.KEY_DOWN:
ball.translate(0,-0.01,0,ball)
elif key == viz.KEY_RIGHT:
ball.translate(0.01,0,0,ball)
elif key == viz.KEY_LEFT:
ball.translate(-0.01,0,0,ball)

vizact.whilekeydown(viz.KEY_UP,myTranslate,viz.KEY _UP)
vizact.whilekeydown(viz.KEY_DOWN,myTranslate, viz.KEY_DOWN)
vizact.whilekeydown(viz.KEY_RIGHT,myTranslate, viz.KEY_RIGHT)
vizact.whilekeydown(viz.KEY_LEFT,myTranslate, viz.KEY_LEFT)


viz.callback(viz.MOUSEDOWN_EVENT,mouseclick)


viz.mouse(viz.OFF)
Reply With Quote