稍微介绍下python库之VPython

额,~!@###@$$#@   VPython是不属于标准Python库的,它是个第三方库.地址在 http://www.vpython.org/.

VPython可以很好地进行3D快速原型的开发.比OpenGL 之流快多了.不是一般的快("唐伯虎点秋香" 经典台词).

安装什么的就不说了.很简单照着做就好了.

VPytho自身带了很多的Object 可视化参考 --> http://www.vpython.org/contents/docs/visual/primitives.html.

可以根据这些组合出很强大的Demo. %Python path%Lib\site-packages\visual\examples下可以看到很多.如: crystal.py

结果如下:

稍微介绍下python库之VPython <<---里面是动态的.

 

使用VPython很简单.

例如要建立一个球.

from visual import *

sphere()

稍微介绍下python库之VPython

哇靠.没见过这么简单的.界面,鼠标键盘响应,都有了.

嗯,下面再加个平面.设置下两个的属性.

from visual import *



box(length=4, height=0.5, width=4, color=color.blue)



sphere(pos=(0,4,0), color=color.red)

稍微介绍下python库之VPython

看上去不错.

当然了.静态的不好看(漂亮妹子除外,漂亮妹子静态也好看的),要加点动态效果.很简单循环控制球的属性就好了.

球也得有个速度,Python就是好,直接动态加速速度属性就好了.控制时间间隔直接rate函数.完整如下:

from visual import *



floor = box(length=4, height=0.5, width=4, color=color.blue)



ball = sphere(pos=(0,4,0), color=color.red)

ball.velocity = vector(0,-1,0)



dt = 0.01

while 1:

    rate(100)

    ball.pos = ball.pos + ball.velocity*dt

    if ball.y < 1:

        ball.velocity.y = -ball.velocity.y

    else:

        ball.velocity.y = ball.velocity.y - 9.8*dt

然后一个蹦蹦跳跳的小球就做出来了.当然了,这个其实是demo中的bounce.py.可以用鼠标控制视角的.

当然VPython还带了图表Object.可以用来绘制函数,曲线啥的.可以在上面的代码中逐个添加加速度,空气阻力什么的.额,高中物理基本忘了.

介绍VPython库的原因呢只是说明下.开阔下思想,不能总在网站,字符处理上打转.可以玩很多很多的.

http://hyry.dip.jp:8000/pydoc/vpython_intro.html 和 http://hyry.dip.jp:8000/pydoc/visual_manual_index.html 有一些中文的介绍.

 

额.. 复习物理先.

 

 

 

 

 

你可能感兴趣的:(python)