VPythonモジュールについて

簡単に使えるビジュアライザ

tags:python, module, tips, 3d
created:2007-02-05T20:24:24

簡単に使えるビジュアライザ 目に見える形にするのが簡単にできます。

VPythonの概要

2Dおよび3Dのモデルを視覚化する支援ライブラリモジュールです。 OpenGLを利用しています。

モデルの表示だけでなく、力学シミュレーションも可能です。

主に利用目的としては2通りあるでしょう。

  • モデルの力学的動作のシミュレーション
  • データのグラフプロッティング

前者も凝れば楽しいことがいろいろできそうですが、 私の需要は後者にあります。

VPythonを使うと簡単にグラフの作図ができます。

スクリーンショット

付属のサンプルです。

../../_images/vpython_sample1.png

実際動かすと箱の中をボールが跳ね回ります。

サイト

ホームサイト: http://vpython.org/

Windows インストーラ: http://vpython.org/download/VPython-Win-Py2.4-3.2.9.exe

グラフプロッティングサンプル

サインカーブを生成してプロットしてみました。

../../_images/vpython_sample2.png

ソースコード:

from visual import graph
from numarray import array, pi, sin, arange

canvas = graph.gcurve()

rad = arange(0.0, pi*2, pi/16)

for i in rad:
    canvas.plot(pos=(i, sin(i)))

numarrayモジュールは数値解析や行列演算支援モジュールです。

このようにシンプルな記述できれいなグラフを作図できてしまいます。

軸ラベルとかその他カスタマイズしだすとたくさんの設定項目がありますが、 CSVファイルの読み込みと処理するだけのコードを書いていても、 表示ができるとわかりやすいですね。そういったときに使っています。

「gcurve」をつかったので曲線描画ですが、「gbars」だと棒グラフ、「gdots」ならドットでプロットします。

結果

表示範囲はバウンディングボックスにしたがって動的に変更されますので自力で描画するのに比べるとかなり楽できます!