WorldViz User Forum

WorldViz User Forum (https://forum.worldviz.com/index.php)
-   Vizard (https://forum.worldviz.com/forumdisplay.php?f=17)
-   -   Some problems... (https://forum.worldviz.com/showthread.php?t=1106)

djdesmangles 05-31-2007 07:40 AM

Some problems...
 
Hello Wizards,

I've some codes that doesn't work... If I want a delay of 2 seconds before playing a sound:

# my variables
# wait for 2 seconds before playing track
def onTimer(num):
Track1.play()
viz.callback(viz.TIMER_EVENT, onTimer)
viz.starttimer(0, 2)


- If I want to listening to my joystick event:

# add a joystick and listen
joy = vizjoy.add()
def joystickListener(num):

y = joy.getPosition[1]
x = joy.getPosition[0]
if math.fabs(y) > 0.2:
viz.move(0,0,-y*0.1)
if math.fabs(x) > 0.2:
viz.move(x*0.1,0,0)
viz.callback(viz.TIMER_EVENT, joystickListener)
viz.starttimer(1, 0.001, viz.FOREVER)

The problem is that only the joystick fonction will work. The sound will never be played. If I change the first fonction to something that requires an infinite loop, the two callbacks will work !!!

I don't undestand why I can't have a delay while starting my joystick...

Thanks,
viz.FOREVER,
D.

farshizzo 05-31-2007 11:08 AM

Hi,

You can only register one global callback function per event. If you want multiple callback functions for an event you need to use event classes. In this example you can also use a different timer ID for each case:
Code:

def onTimer(num):
    if num == 1:
        #Perform joystick listener code
    elif num == 0:
        Track1.play()
viz.callback(viz.TIMER_EVENT, onTimer)
viz.starttimer(1, 0, viz.FOREVER)
viz.starttimer(0, 2)

Alternatively, you could use the vizact library:
Code:

def joystickListener():
    #joystick listener code
vizact.ontimer(0,joystickListener) #Call function every frame

vizact.ontimer2(2,0,Track1.play) #Play track in 2 seconds


djdesmangles 05-31-2007 11:27 AM

Oki...
 
OOoooooww... I'm going to try...

Thanks a lot...
viz.FOREVER
D.


All times are GMT -7. The time now is 09:35 PM.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Copyright 2002-2023 WorldViz LLC