More Related Content
Similar to ADVENTURE AutoGL 「おてがる」 (20)
More from ADVENTURE Project (20)
ADVENTURE AutoGL 「おてがる」
- 2. “AutoGL 「おてがる」とは ?”
• 数値計算ユーザーのための、グラフィックス、
GUI ( グラフィカルユーザーインターフェイ
ス)、可視化のためのライブラリ
• ADVENTURE Project (1997-2003) において開発
された
• オープンソース ADVENTURE プロジェクトに
おいて継続的にサポート
• http://adventure.sys.t.u-tokyo
.ac.jp
- 3. “AutoGL ”「おてがる」とは?
( もっと詳しく )
• C 、 C++ 、 Fortran( 77/90)プログラマのための
ライブラリ
• BASIC のようなもの。三次元グラフィックス、アニメ
ーション、ウィンドウ、ボタン、マウスのイベント処
理、ビジュアライゼーションなどなど。
• どこでも動く。 Linux 、 Windows 、 MacOS 、 UNIX
など多くのプラットフォーム上で。あるいは、 PC クラ
スタやスパコン、計算サーバなどで。その他、インタ
ーネット、ウェブブラウザ、 PDA 、携帯でも動く(ら
しい)。
- 4. “AutoGL で何ができるのか ?”
• 画面にビューウィンドウを開き、そこで線分、三角形
、文字列などを表示できる ( 三次元グラフィック
ス)
• ラベル、ボタン、トグル、ラジオボタン、テキストフ
ィールドなどをパネルウィンドウに置く ( GUI)
• 移動、拡大縮小、回転などをマウスを用いて行う
( 対話性)
• ビューウィンドウ上のオブジェクトをピック、選択で
きる ( 選択と編集)
• 等高線コンター、変形図、等値面、任意断面、ベクト
ル矢線、パーティクルプロットが表示できる ( 可視
化)三次元グラフィックス、 GUI と可視化
- 6. “AutoGL アプリはどこで動作する ?”
• スタンドアロン( GUI)
– Linux / FreeBSD / MacOS (OpenGL と Gtk+)
– Windows (OpenGL と WIN32)
• Cygwin GCC, or Visual C++
– UNIX (OpenGL と Motif)
• Sun, HP, IBM, SGI, Linux, Cygwin
– 大画面、立体視
複数のプロジェクタを用いる
• コマンドライン、バッチ処理環境
– PC クラスタ、 SGI Altix 、地球シミュレータ
– 並列版
• クライアントサーバ環境
– Web サーバとブラウザ (HTTP および CGI)
• HTML+JavaScript
• Java アプレット
– Web サーバと携帯電話 (HTTP および CGI)
• NTT DoCoMo i-mode ( I アプリ ) での Java 実装
– リッチクライアント
• 計算サーバと PC ネイティブクライアント (rsh or SSH)
ユーザー側のコード
は一行もいじらずに
、これらのプラット
フォーム上で動作し
ます。
- 7. 同じ AutoGL アプリ が「どこでも」
動く
携帯電話
( NTT DoCoMo )
スタンドアロン PC
( Linux )
Web ブラウザ
( Internet Explorer)
- 8. “ ちょっとややこしそうだ ...
ユーザーとしてどんな人が対
”象?
• 簡単なプログラムを書ける人なら、誰でもOK。
– C 、 C++ および Fortran(77/90) のプログラムから利用
– 数百行ぐらいのプログラミング経験
– 基本的な文法だけで良し
• 整数と浮動小数点変数
• ループと分岐( DO/for および IF/if 文)
• 配列
• サブルーチンと関数
• ファイルの読み書き
学部レベルのプログラミング授業を受けたこ
とがあるなら、誰でも AutoGL 「おてがる」を
- 9. サンプルコード: C 言語の例
void RedrawView(void)
{
AutoGL_SetColor(1.0, 1.0, 0.0);
AutoGL_DrawLine(0.0, 0.0, 0.0,
10.0,20.0,25.0);
AutoGL_SetColor(0.0, 1.0, 1.0);
AutoGL_DrawTriangle(
0.0, 0.0, 0.0
5.0, 10.0, 0.0,
10.0, 5.0, 0.0);
}
黄色( red=1,green=1,blue=0)
水色( red=0,green=1,blue=1)
三点を結ぶ三角形
(0,0,0), (5,10,0), (10,5,0)
• フラットシェーディング
• 光源計算
• 陰面処理
2 点を結ぶ線分
• (0,0,0), (10,20,25)
• 陰線処理
- 10. サンプルコード:Fortranの
例
subroutine autogl_redraw
autogl_set_color(1.0d0, 1.0d0, 0.0d0)
autogl_draw_line(0.0d0, 0.0d0, 0.0d0,
c 10.0d0,20.0d0,25.0d0)
autogl_set_color(0.0d0, 1.0d0, 1.0d0)
autogl_draw_triangle(
c 0.0d0, 0.0d0, 0.0d0
5.0d0, 10.0d0, 0.0d0,
10.0d0, 5.0d0, 0.0d0)
end
黄色( red=1,green=1,blue=0)
水色( red=0,green=1,blue=1)
三点を結ぶ三角形
(0,0,0), (5,10,0), (10,5,0)
• フラットシェーディング
• 光源計算
• 陰面処理
2 点を結ぶ線分
• (0,0,0), (10,20,25)
• 陰線処理
- 12. “ なぜ AutoGL を使うのか ?”
• 簡単に使える。 OpenGL 、 DirectX 、 MFC 、 Motif 、
Gtk+ 、 .NET や Java3D などよりぜんぜん簡単。
• VRML 、 Tcl/tk や Visual Basic よりも、機能が豊富でい
ろいろできる。しかも速い。
• MicroAVS 、 FEMAP や Patran など、商用可視化ソフト
またはプレポストプロセッサのようなものだが、 C/C+
+/Fortran でコードを書いてカスタマイズが容易。
• むしろ AVS Express などのよりヘビーで本格的な可視
化パッケージに近いが、オープンソースでフリー。
- 18. “ 分かった分かった、で、
AutoGL はどこから手に入るの ?”
• 正式版(古いバージョン)については、
– http://adventure.sys.t.u-tokyo.ac.jp
– ADVENTURE Auto モジュールをダウンロード
– 中に AutoGL ライブラリとFEM向け可視化ツールが入ってま
す。
• 最新版については、
– http://adventure.sys.t.u-tokyo.ac.jp
– 「プロジェクト」 => 「メンバー」ページへ。そこから僕(河
合)のホームページへ。
– AutoGL 「おてがる」のベータ版が置いてあります。