MV-1040:Tclを用いたモデルの構築
本チュートリアルでは、HyperWorks desktop Tclインターフェースの使用およびTclコマンドを用いたシンプルなモデルの構築を行う方法について学習します。
- Tcl
- Tcl (Tool Command Language。"ティクル"または"ティーシーエル"と発音)は、素早いプロトタイピング、スクリプト化されたアプリケーション、GUI、テストなどに一般的に使用されるスクリプト言語です。
- Tclは、シンプルでプログラム可能なシンタックスを有します。
- Tclは、オープンソースです。
- HyperWorks Desktopには、エンドユーザーを補助するライブラリを有したTclインタープリターがビルトインされています。
- Tclは、スタンドアロンで、もしくはMotionViewを含むHyperWorks Desktopなどのアプリケーションに埋め込んで使用することができます。
- コンパイル言語であるCとは異なり、Tclはインタープリター言語です。Tclプログラムは、Tclインタープリターによって処理されるTclコマンドから成るシンプルなスクリプトです。
- Tclは拡張が可能です。新規のTclコマンドは、C言語を使ってインプリメントでき、簡単に統合できます。多くの人達が共通のタスクについて拡張パッケージを書いており、それらはインターネット上で自由に入手できます。
- エンジニアリングチームは異なるリソースやアプリケーションを使用します。Tclは、それらのリソースを繋ぐために使用することができます。これは、ワークフローの自動化において大いに役立ちます。
- Tkは、強力なGUIの迅速な作成を可能とするグラフィカルユーザーインターフェースツールキットです。
- Tcl/Tkは非常にポータブルで、Unix、windows、Macintoshをはじめとした異なる環境で実行されます。これは、いろいろなプラットフォームで作業を行うユーザー達に数々の恩恵をもたらします。
- MotionViewで大規模なマルチボディモデルを構築する際、同じ手順を複数回繰り返すような状況に出会うことがあります。そのような手順または手順のセットは、Tclを使って自動化し、時間のかかる反復的なタスクを行うことで浪費される時間と手間を節減することが可能です。
- すべてのHyperWorks Desktopアプリケーションがそうであるように、MotionViewも、製品の様々な機能にアクセスし、それらを活用してプロセスを自動化するためのスクリプトの記述を補助するTclコマンドレイヤーを有しています。
- Tclスクリプトは、Tkアプリケーションによりコールされる、もしくはProcess Managerに結びつけることが可能です。
- Tclスクリプトは、プリファレンスファイルに登録でき、メニューのショートカットで製品の一部となり得ます。
HyperWorks DesktopハンドルとHyperWorks Desktopデータベースはオブジェクトの階層構造で成っており、そのルートは自動的に作成されるhwiオブジェクトです。hwiは、hwiSessionオブジェクトおよび幾つかのハイレベルのユーティリティへのアクセスを提供します。現時点では、HyperWorks Desktopは1つの実行毎に1つのセッションしかサポートしません。セッションオブジェクトは、Tclコマンドプロンプトにおいて、以下のコマンドでリトリーブできます:(System32) 1 % hwi GetSessionHandle sess1.
- (System32) 2 % sess1 GetProjectHandle proj1
- (System32) 3 % proj1 GetPageHandle page1 1
- (System32) 4 % page1 GetWindowHandle win1 1
- (System32) 5 % win1 SetClientType "Animation"
- (System32) 6 % win1 GetClientHandle post1
1つのウィンドウのクライアントタイプは、クライアントハンドルがリトリーブされた後は変更できません。ウィンドウのクライアントタイプが変更された場合、クライアントハンドルは開放され、再度リトリーブされる必要があります。
- ListMethods:オブジェクトに実行されるメソッドコマンドを表示します。
- ListHandles:同じタイプの全コマンドオブジェクトの名称をリストします。
- ReleaseHandle:コマンドオブジェクトを開放します。
トップレベルのhwiコマンドオブジェクトは、ユーティリティコマンドListAllHandles(現在使用されているすべてのコマンドオブジェクトを表示)をサポートします。
Tclコマンドを使ったシンプルな振り子モデルの構築
このステップでは、シンプルな振子モデルを構築するためのTclスクリプトを作成します。
hwi OpenStack
Obtain All necessary handles
Perform some function
Release All obtained handles individually
hwi CloseStack
Tclファイルの読み込み
このステップでは、振子モデルのTclファイルを読み込みます。
プリファレンスファイルでのTclの登録
このステップでは、MotionViewでTclファイルをプリファレンスファイルとして登録する方法について学習します。