#1
|
|||
|
|||
Stop avatar from walking to its destination
I'm fairly new to Python and Vizard, so the answer to this may be strikingly obvious to some.
I'm trying to stop my pedestrian avatar from walking to a final location as soon as I enter within the bounds of its proximity sensor. My current code is as follows You can assume I've done all necessary module imports: Code:
def set_avatar_proximity_sensor(): global manager, sensor manager = vizproximity.Manager() manager.setDebug(viz.ON) target = vizproximity.Target(Me) manager.addTarget(target) sensor = vizproximity.addBoundingSphereSensor(pedestrian,scale=2) manager.addSensor(sensor) vizact.onkeydown('d',manager.setDebug,viz.TOGGLE) def pedestrian_actions(): runAction = vizact.walkTo( [-12, 0, 3] ) pedestrian.addAction (runAction) def enter_proximity(e): runAction = vizact.walkTo( [-12, 0, 3] ) pedestrian.addAction (runAction) set_avatar_proximity_sensor() vizact.ontimer(0, pedestrian_actions) manager.onEnter(sensor, enter_proximity) |
#2
|
|||
|
|||
I've been able to stop the animation of the avatar's body using an if statement, but otherwise have not been able to stop the avatar's trajectory to a destination.
|
#3
|
|||
|
|||
Solved
I solved the issue with a simple if-elif statement
Code:
def pedestrian_actions(): ped_position = pedestrian.getPosition() car_position = car.getPosition() distance = vizmat.Distance(ped_position, car_position) runAction = vizact.walkTo( [-12, 0, 3] ) print(distance) if distance > 4: pedestrian.addAction (runAction) elif distance < 2: pedestrian.clearActions() |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
avatar walking backward | sbilleter | Vizard | 1 | 09-18-2015 11:26 AM |
Walking Animation of Avatar | pradeep | Vizard | 1 | 07-03-2014 03:35 AM |
How to simulate avatar walking along a slanted surface | Zhi | Vizard | 3 | 11-21-2013 04:27 PM |
walking of avatar via patriot | Veronika | Vizard | 6 | 10-07-2011 12:33 AM |
avatar walking over a sequence of points | IGoudt | Vizard | 1 | 10-16-2009 11:22 AM |