東京工業大学大学院理工学研究科基礎物理学専攻中村研究室メンバーTakayuki Sako

SOLVisualizer

SOLDIRAs OpenGL Visualizer

SOLDIRAsが出力したジオメトリとトラッキングのデータを受け取って表示する3D Viewer

SOLDIRAsに付随するおまけソフトの位置づけだが、SOLDIRAs本体とは独立した全く別のプログラム。 したがって、SOLDIRAs本体をコンパイルできない環境でもSOLDIRAsのディレクトリを丸ごと持ってきて SOLVisualizerだけコンパイル、実行することが可能。

開発環境

Linux版

  • Ubuntu 9.10
  • gcc 4.4.1

Windows版

  • Windows Vista Ulitimate SP2
  • Microsoft Visual C++ 2008 Express Edition
  • Microsoft Visual Studio 2008 Version 9.0.30729.1 SP
  • Microsoft .NET Framework Version 3.5 SP1

共通

  • 言語 : C++
  • 使用しているライブラリ : feeglut, glui, libpng

使い方 (Linux版)

コンパイル
SOLDIRAs_Vxxxxx/SOLVisualizer$ make

実行
SOLDIRAs_Vxxxxx/SOLVisualizer$ ./Visualizer filename [width,height]
  • filename : SOLDIRAsのconfigで設定した名前。
  • width : ウィンドウの幅。省略可能。
  • height : ウィンドウの高さ。省略可能。

仕様

開発中につき仕様は度々変更しているが、現状以下のような機能を持つ。
  • SOLDIRAsで設定した検出器、建造物を3Dで表示する。
  • 宇宙線のシミュレーション結果を動画で表示する。
  • pngの出力。
  • pngの連続出力(convertを使って動画gifなどに変換可能)。

GUIの説明

(filename)

実行時のコマンドの第一引数。 現在表示しているファイルの名前を表示している。

Save as .png

キーボード・ショートカット : p
現在表示している画面をpngとして保存する。
ファイル名は filename_101.png
以降、このコマンドを実行する毎に102,103…と連番で出力される。
SOLVisualizerの実行の度に番号は初期化されるので、同じファイルを読み込んでこのコマンドを実行するとpngが上書きされるので注意。 また、SOLVisualizerのウィンドウ上に他のXウィンドウがあると正しく画面をキャプチャできないので注意。

Initialize

キーボード・ショートカット : i
視点、位置をデフォルトに戻す。 変な方向を向いてしまったときに役立つ。

Exit

キーボード・ショートカット : ESC , q
SOLVisualizerを終了する。

トランスレーションパネル XY,Z

キーボード・ショートカット : WASD、↑↓→←
マウスでドラッグすると位置が動く。 Shiftを押しながらだと速く動く。

(画面上をドラッグ)

視点の移動。
視点制御(本質的には物体の回転制御)にはクォータニオンを利用している。

Cosmic ray

Particle
粒子を表示する/しない
粒子は動画で表示されるためそれなりのマシンパワーを必要とする。
Save as Movie
pngの自動連番出力。
チェックを付けている間pngを出力し続けるので間違えて実行しないよう注意。

NEUT,VETO,FTRIG,BTRIG,RIBF

各クラスターに関するオプション。
display
表示する/しない
RGB
色をRGB0-255で調整できる。
Transpearence
透明度を0-100で調整できる。
Solid/Wire
  • Solid ポリゴン表示
  • Wire ワイヤーフレーム表示
Outline
黒い輪郭線を表示する/しない Solidのときのみ有効。

Option

その他細かいオプション。
Z-buffeting
Zバッファを有効にする/しない
SOLVisualizerは負荷軽減のためZソートを行っていない。 そのため、デフォルトではデプスの情報が正しくない(奥にあるはずの物体が手前に表示される) Zバッファを有効にするとデプスが正しく扱われるがアルファブレンディングが無効になる(半透明で表示されなくなる)
Information
各種情報を画面上に表示する
fps : フレームレート。但し、正確ではない。

ファイル形式

SOLDIRAs本体とどう関係しているかという話。 SOLVisualizerはSOLDIRAsが出力するファイルのうち四つを読み込んで実行する。 故にこれらのファイルは無闇に編集してはならない。

filename.txt

各クラスターが存在するかどうかの判定に用いる。 該当クラスターが存在しない場合、GUIを生成しない。

/geometry/filename.vlzg

検出器のジオメトリデータ。

/track/filename.vlzt

検出器中でのトラッキングデータ。

/track/filename.vlza

全空間でのトラッキングデータ。

参考文献

以下のサイトには大変お世話になりました。