額,~!@###@$$#@ 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
結果如下:
<<---里面是動態的.
使用VPython很簡單.
例如要建立一個球.
from visual import * sphere()
哇靠.沒見過這么簡單的.界面,鼠標鍵盤響應,都有了.
嗯,下面再加個平面.設置下兩個的屬性.
from visual import * box(length=4, height=0.5, width=4, color=color.blue) sphere(pos=(0,4,0), color=color.red)
看上去不錯.
當然了.靜態的不好看(漂亮妹子除外,漂亮妹子靜態也好看的),要加點動態效果.很簡單循環控制球的屬性就好了.
球也得有個速度,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 有一些中文的介紹.
額.. 復習物理先.