iLogic のルールおよびフォームの概要

iLogic ブラウザは、iLogic ルール、フォーム、グローバル フォームおよび外部ルールを一覧表示します。

注: 代替を作成する場合、これはソース アセンブリに含まれる iLogic ルールおよびフォームを継承しない別のドキュメントになります。

ルールの概要

ルールは、小さな Visual Basic (VB.NET)プログラムで、他の Inventor パラメータ、フィーチャ、またはコンポーネントをモニタしたりコントロールしたりできます。

iLogic では、ルールをオブジェクトとして、パーツ、アセンブリ、および図面ドキュメントに直接埋め込みます。ルールは、デザイン パラメータや属性値を決定したり、駆動したりします。これらの値をコントロールすることで、モデルの属性、フィーチャ、およびコンポーネントの特性を定義できます。

ジオメトリ設計要素の保存方法と同様に、情報を直接ドキュメントに保存します。

フォームの概要

カスタム ユーザ インタフェースを作成し、Inventor のパーツ、アセンブリ、または図面ドキュメントのパラメータ、プロパティ、およびルールに接続します。

ドラッグ アンド ドロップにより、プログラミングを行わずにユーザ インタフェースを設計します。コントロールを使用して、既存の設計への変更を行うことができます。フォームの定義はドキュメント固有に設定でき、設計ドキュメントとして保存、または複数のドキュメントで使用するために保管できます。

注: フォームの作成に、ルールは必要ありません。

外部ルールの概要

外部ルールは、iLogic ルールか、手動で実行する小さなプログラム(VBA マクロなど)として使用することができます。これらはテキストまたは VB ファイルとして Inventor ドキュメント(パーツ、アセンブリ、または図面)の外部に保存します。これらは手動で実行するか、他のルールから実行できます。

外部ルールの一覧を iLogic ブラウザで表示するとき、開いているドキュメントに関係なく一覧の内容は同じになります。個別のドキュメントには、関連付けられていません。

また、外部ルールは、イベント駆動ルールとして実行することもできます。

ウィザードの概要

iLogic にはいくつかのウィザードが用意されており、特定のタスクについて高度なルールを作成するために使用することができます。これらのウィザードは、[ルールの編集]ダイアログ ボックスの[ウィザード]タブにあります。

iLogic ブラウザの環境

iLogic ブラウザでは、ルールは 2 つのタブに分類されています。

フォームは 2 つのタブに分類されています。

iLogic ブラウザの表示を、リボンの[表示]タブ[ウィンドウ]パネル[ユーザ インタフェース]の iLogic ブラウザでコントロールできます。

ルールのパラメータ

ルール内では、Visual Basic 変数と同様に、標準の Inventor パラメータ名を使用することができます。ルールを実行するとき、パラメータの値が変数に割り当てられます。数値パラメータの場合、[ツール] [ドキュメント設定]で指定されたドキュメント単位の実数になります。テキスト パラメータは、ルール内では文字列変数になります。真/偽のパラメータは、ブール変数になります。

パラメータは 2 種類の方法で表示できます。

外部ルールとパラメータ

外部ルールは、特定のパラメータの変更に対応して自動的に実行されることはありません。内部のルールと違って、パラメータ名が自動的にルールの変数として利用可能にはなりません。

たとえば、次のルールのステートメントは機能しません。

d1 = d0 * 0.5

代わりに、次の記述を使用します。

Parameter("d1") = Parameter("d0") * 0.5

このステートメントは、d0 および d1 と命名されたパラメータを持つパーツおよびアセンブリで機能します。このステートメントは、何らかの共通点があるパーツを操作する際に使用することができます。

ルール内の既定のエンティティ名

ルール内の次のいずれかの Autodesk Inventor エンティティ名を使用する前に、作成時に既定の名前が割り当てられている場合には、その名前を変更する必要があります。

意味のある名前を付けてください。名前を変更すると、実行しているルールの内容を容易に把握できます。

また、既定の名前を変更するもう 1 つの理由に、移植性を向上することがあります。Inventor のローカライズ バージョンでは、既定の項目名はそのバージョンの言語に翻訳されます。モデル ブラウザでは、名前が自動的に変更されますが、iLogic ルールでは変更されません。したがって、既定の名前を使用している場合、ルールで項目を検出できない場合があります。他のユーザが Inventor の別の言語バージョンでモデルを使用する場合、既定の名前を変更する必要があります。この推奨事項は、ルールから名前によって呼び出される項目のみが該当します。たとえば、計測関数では、作業フィーチャ名を使用する場合があります。作業フィーチャがあり、計測関数では使用しない場合は、名前を変更する必要はありません。この推奨事項の例外の 1 つに、埋め込み Excel スプレッドシートがあります。この場合は名前を変更しないでください。

Inventor の非英語バージョンでは、ルール内で英語名を使用します。次の例を参照してください。

"3rd Party:Embedding 1"
注: iMate などの一部のエンティティは、作成時に名前を指定できます。

ルールが実行される場合

パラメータが直接ルールの変数として使用されている場合、通常は、パラメータ値が変更されたときに自動的にルールが実行されます。また、ルールはイベントによってトリガすることができます。

ルールは、省略されていない限り、編集するとその直後に実行されます。ルールが実行されると、モデルでは、ルールの実行が終わるまでパラメータの変更は更新されません。必要な場合には、次のいずれかを使用して、即座にパラメータの変更が反映されるように強制することができます。

ルールの処理方法

ルールを作成または編集するとき、ルールのテキストは有効な VB.NET コードに変換されて、コンパイルされます。一部の Inventor パラメータ名は、VB.NET の変数名として有効ではありません。すべての Inventor パラメータ名を使用できるようにするために、iLogic では、Inventor パラメータの新しい変数名を内部的に置換します。

パラメータ名として使用するキーワード

Visual Basic のキーワードはパラメータ名として使用できますが、新しいドキュメントで使用することはお勧めできません。ただし、ルールを既存のドキュメントに追加するときには、多くの場合パラメータ名を変更する必要はありません。ある名前がキーワードと同一で、そのキーワードがルール内で必要な場合には、次の方法で対処できます。

ルール内の単位

Inventor の単位は、標準の Inventor パラメータの計算式と同様に、ルール内で使用することができます。

例 - ドキュメント単位の混在

この例では、パーツ ファイルでドキュメント単位にインチが使用されています。iLogic パラメータ エディタで次のように指定されています。

ルールは次のように記述されています。

result = x + y
MessageBox.Show(result,“Mixed Units Defined in Parameter Editor”)

加算計算時、y パラメータの値を 12.5 mm から .4921 インチに変換します。メッセージ ボックスに 1.49212598425197 の値が表示され、パラメータ エディタで単位が混在して定義されていることが示されます。

逆に、ドキュメント単位がミリメートルで定義されている場合、iLogic によって x パラメータの値が 1 in から 25.4 mm に変換されます。メッセージ ボックスに 37.9 の値が表示され、パラメータ エディタで単位が混在して定義されていることが示されます。