Presentation is loading. Please wait.

Presentation is loading. Please wait.

VRML とJavaによる 3次元動作シミュレーションの実現

Similar presentations


Presentation on theme: "VRML とJavaによる 3次元動作シミュレーションの実現"— Presentation transcript:

1 VRML とJavaによる 3次元動作シミュレーションの実現
Takashi KOSHIDA Department of Information Technology Matsue National Collage of Technology

2 1.はじめに CALSの枠組みの中で、 VRML(Virtual Reality Modeling Language)を3次元CAD/CAM 設計・検証に適用できないか? インターネット上で3次元グラフィクスを実現する技術。 インターネットを利用したデータの相互活用(イントラネット、エクストラネット) 利点 動きが扱える。 → 動作シミュレーションの実現

3 2. VRMLのビヘイビァ機能 動作の実現 VRMLとJavaを組み合わせる。
データ変化の基になる理論(数式)に基づいて、ユーザがプログラム化できる。 拡張性、自由度が高い。

4 2. VRMLのビヘイビァ機能 (Cont.) その概要 イベント Javaスクリプト イベント・ハンドラ (Javaメソッド) 処 理
API マウス・ク リック等 VRMLデータ イベント の変更 処 理 イベント・ハンドラ (Javaメソッド) Javaスクリプト その概要

5 2. VRMLのビヘイビァ機能( Cont.) 具体例 クランク・ピストン機構 スレンダ クランク ピストン

6 2. VRML のビヘイビァ機能(Cont.) クランク・ピストン機構(モデル 図) l B r θ x C O‘ A O
x=r(λcosθ+(1-λ2sin2θ)1/2)/λ (1)

7 3. 動作シミュレーション 理論解析 X = r (λcosθ+(1-λ2sin2θ)1/2 ) /λ (1)
プログラムでは、この変位Xを原点O、O’を中心としたxy平面上での回転として、表現した。

8 (イベント・ハンドラを含むJavaコード)
3.動作シミュレーション(Cont.) VRML ファイルの実装 VRMLデータ マウス・クリック等 シーンノード Scriptノード: Script{ url[“ /test.class” ] } イベント test.class (イベント・ハンドラを含むJavaコード) Routeノード: Route ノード・フィールド TO ノード・フィールド

9 3. 動作シミュレーション(Cont.) VRMLファイルの実装 動作の開始は、マウス・クリックで行う。 クランクとスレンダをグループ化。
TouchSensorノード と TimeSensorノードを利用する 。 クランクとスレンダをグループ化。 相対座標を利用する。

10 3. 動作シミュレーション(Cont.) 動作の表現 Interpolatorノードを利用。 まず、クランクの回転運動を定義する。
具体的には、Z軸回りの回転運動を表現する、OrientationInterpolatorを用いた。 DEF CLANK_INTP OrientationInterpolator{ key [0, 0.25, 0.5, 0.75, 1.0] # keyValue is set by Script. }

11 3.動作シミュレーション(Cont.) Javaスクリプトのコール クランクの回転運動に伴い、スレンダが変位する。
その変位をJavaスクリプトで計算し、VRMLファイルに戻す。 DEF CLANK_SCRIPT Script { url "RotationMecha12.class" eventIn SFTime touched eventOut MFRotation setClankPosition eventOut SFTime setClankstartTime }

12 3.動作シミュレーション(Cont.) 動作の伝達の指定 ROUTEノードを使う。
マウス・クリックによる動作の開始からクランクの回転運動、それに連動したスレンダーの動きを順番に指定する。 ROUTE CLANK_TOUCH.touchTime TO CLANK_SCRIPT.touched ROUTE CLANK_SCRIPT.setClankPosition TO CLANK_INTP.set_keyValue ………………………..

13 3.動作シミュレーション(Cont.) Java スクリプトについて processEvent() メソッド VRMLライブラリ
vrml パッケージを import する。 processEvent() メソッド VRMLからのイベントを受ける。 必ず、必要なメソッドである。 マウス・クリックを検知して、その後のスレンダの回転角度を計算する。

14 4. まとめ メリット 3次元データの作成が、プログラミング感覚で行える。 設計に基づいた動作シミュレーションが行える。
寸法指定でデータが作成できる。操作をする意識が余り必要ない。 設計に基づいた動作シミュレーションが行える。 理論式のプログラム化。 設計者が自ら動作確認が可能である。 拡張性、柔軟性に富む。 Javaが利用できる。

15 4. まとめ (Cont.) デメリット 複雑な形状データ作成が難しい。 座標軸や座標値の表示がない。 基本形状データの種類が少ない。
ライブラリ的に形状データが必要。 センスの問題(?) 座標軸や座標値の表示がない。 原点の位置、寸法が見えない。 基本単位がm(メートル)である。

16 5. 実験環境 実験環境 OS : Windows 95 VRMLブラウザ
Sony Community Place VRML2.0 Browser version 2.0 Preview Release D2 Java : JDK 1.1_Final

17 謝辞 助言を頂いた情報計画デザイン研究所の松宮氏 並びにソニー株式会社の桃井氏に感謝致します。


Download ppt "VRML とJavaによる 3次元動作シミュレーションの実現"

Similar presentations


Ads by Google