VPython - example - 模拟平抛运动

本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 Unported许可协议进行许可。允许非商业转载,但应注明作者及出处。


作者:liuyuan_jq

2011-04-10


From http://wiki.showmedo.com/index.php/PythonThompsonVPythonSeries

 

from visual import * scene.width = 400 scene.height = 300 scene.autoscale = 0 scene.range = (100,100,100) scene.center = (0,40,0) ball = sphere(pos=(0,102,0),radius=2) ground = box(pos=(0,-1,0),size=(100,2,10)) building = box(size=(6,100,6),pos=(0,50,0),color=color.blue) gravity = 9.8 # m/s**2 velocityX = 6 # m/s seconds = 0 dt = .01 finished = False while not finished: rate(100) # go thru the loop no more than 100 times/s seconds += dt # position equation: y(t) = y0 + v0*t + .5 * a * t**2 ballY = 102 - .5 * gravity * seconds**2 ballX = velocityX * seconds ball.pos = vector(ballX,ballY,0) if ballY - 2 <= 0: finished = True print "seconds to drop: " + str(seconds) print "distance in the x direction: " + str(ballX)

 

VPython - example - 模拟平抛运动_第1张图片

你可能感兴趣的:(VPython - example - 模拟平抛运动)