GAVE

Seiya Nishizawa

<seiya@kugi.kyoto-u.ac.jp>

http://www-mete.kugi.kyoto-u.ac.jp/seiya/gave.html

概要

Rubyで書かれたGPhys,GTK+,DCLを使用した簡単な解析およびクイックビューのためのGUIツール

現在NetCDF,GrADSファイルに対応

リンク

ruby http://www.ruby-lang.org/

gtk+ http://www.gtk.org/

DCL http://www.gfd-dennou.org/

dennou-ruby http://ruby.gfd-dennou.org/index-j.htm

スクーリンショット

構成概略図

GUIパーツ作成

(GTK+)

File解析

data作成

解析

作図

(DCL)

Xイベント処理

画面イメージ

ダンプ

再描画用

コード作成

作図用data

GPhys

Axis

GAVE Class

Draw Class

Draw_data Class

draw_x

save_image

save_code

GAVE Class

GUI パーツ作成

GTK+を利用

File 解析

変数名の取得 (次元が1で軸と同じ変数は無視)

各変数ごとに軸と属性を取得

グローバル属性の取得

data 作成

ユーザーの選択に応じて変数名、図or解析の種類、X軸名、Y軸名(2次元図の場合のみ)を決定

サブWindowでその他の図のパラメータを決定

drawボタンが押されたらDraw Classに上記の情報をもったDraw_dataオブジェクトを渡す

解析

結果の変数名は元の"元変数名(軸名 関数名)"となる

Draw Class

作図

Draw_dataオブジェクトのデータを元にDCL(GTK利用)で描画する

Xイベント処理

図の位置や大きさなどをユーザーのマウス操作により調整する

スペースキーが押されると次の断面図を描画

画面イメージダンプ

イメージの保存が選択されると画面のダンプをファイルとして出力する

再描画コード作成

作図時にrubyコードを文字列として作成し、コードの保存が選択されるとファイルに出力する(実は作図時にもこの文字列をevalしている)

Draw_data Class

作図用データ

GPhys

データー情報(名前、配列、単位)

軸情報(名前、配列)

切り取った軸の情報

ファイル名、ファイルタイプ

等値線、トーン間隔

軸の順番

図のタイプ、地図投影のタイプ

タイトル

軸情報

最小、最大値

タイトル、単位

リニアor対数スケール

今後の課題

ネットワーク対応(DRuby利用)

一部動作済

プロトコルの統一

セキュリティーの問題

履歴の保存

ファイル名

お気に入りの作図パラメータ

利用ユーザーの増加

バグ報告、要望

開発参加

2004-03-18T17:25:36