リレーション
 
このセクションでは、 の関数を使用して、 のすべてのモデルとモデルアイテムのリレーションにアクセスする方法について説明します。
次の関数について説明します。
置換された関数:
オブジェクト ProRelset は、任意のモデルまたはモデルアイテムのセット全体を表します。これは、このセクションで説明する関数を介してのみ内容にアクセスできる不透過ハンドルです。
は、次の表に示すモデルおよびモデルアイテムタイプのリレーションにのみアクセスできます。
モデルタイプ
説明
PRO_PART
部品
PRO_ASSEMBLY
アセンブリ
PRO_DRAWING
図面
PRO_REPORT
レポート
PRO_DIAGRAM
ダイヤグラム
PRO_DWGFORM
フォーマット
PRO_UDF
ユーザー定義フィーチャー
PRO_FEATURE
フィーチャー
PRO_SURFACE
サーフェス
PRO_EDGE
エッジ
PRO_WELD_PARAMS
溶接パラメータ
PRO_BND_TABLE
ベンドテーブル
PRO_EXTOBJ
外部オブジェクト
PRO_PATREL_FIRST_DIR
パターン方向 1
PRO_PATREL_SECOND_DIR
パターン方向 2
PRO_RELOBJ_QUILT
キルト
PRO_RELOBJ_CRV
カーブ
PRO_RELOBJ_COMP_CRV
複合カーブ
PRO_RELOBJ_ANNOT_ELEM
アノテーション要素
PRO_RELOBJ_NC_STEP_OBJECT
NC ステップテーブルエントリ
PRO_RELOBJ_NC_STEP_MODEL
NC ステップテーブルモデル
関数 ProModelitemToRelset() は、特定のモデルアイテムによって所有される初期のリレーションのセットを含む ProRelset オブジェクトを出力します(すべてのモデルアイテムが関連付けられたリレーションセットを持てるわけではなく、この表にリストされているタイプのみです)。
関数 ProRelsetPostregenerationInit() を使用して、再生後データ構造体 ProRelset を初期化します。このオブジェクトには、指定したモデルの再生後リレーションが含まれています。
*必要に応じて、初期リレーション、または再生後リレーションのデータオブジェクト ProRelset を関数 ProRelsetRelationsGet()ProRelsetRelationsSet()ProRelsetRegenerate()、および ProRelsetDelete() の入力として渡すことができます。
フィーチャーパターンのリレーションを取得するには、モデルアイテムタイプが PRO_PATREL_FIRST_DIR または PRO_PATREL_SECOND_DIR である必要があります。また、ID はパターンをその方向に駆動するパターンリーダーの寸法と同じである必要があります。パターン寸法の ID を探すには、パターンの操作のセクションで説明されている関数を使用してください。
関数 ProSolidRelsetVisit() により、モデルの各モデルアイテムのリレーションセットがチェックできるようになります。フィルタ関数がなくても、ほかのチェック関数のように、この関数は、各リレーションのセットに対してユーザーから指定された処理関数を呼び出します。ユーザーが指定した関数が PRO_TK_NO_ERROR 以外の値を返した場合、チェックは停止します。モデルタイプ PRO_PARTPRO_ASSEMBLYPRO_DRAWING がサポートされています。
関数 ProRelsetToModelitem() は、指定された ProRelset のオーナーであるモデルアイテムを出力します。
関数 ProRelsetRegenerate() を使用してリレーションセットを再生できます。この関数は、指定されたリレーションセットが有効かどうかを判別します。エラーが起きた場合、この関数は PRO_TK_NO_ERROR 以外の値を返します。
モデルアイテムの新しいリレーションセットを作成するには、関数 ProRelsetCreate() を使用します。リレーションセットがそのアイテムにすでに存在する場合、関数は PRO_TK_E_FOUND を返します。
指定したリレーションセット内のすべてのリレーションを削除するには、関数 ProRelsetDelete() を呼び出します。
関数 ProRelsetRelationsGet() は、ProRelset オブジェクトにより説明されたリレーションセットのテキストを抽出します。この関数は、リレーションセット用の ProRelset と、事前割り当て済みの拡張可能配列の 2 つの引数を取ります。拡張可能配列の要素のタイプは ProLine です (ワイド文字列)。
関数 ProRelsetRelationsSet() は、リレーションをテキストとして説明する ProLine オブジェクトの拡張可能配列から ProRelset オブジェクトを作成します。構文およびリレーションの使用法の詳細については、 のヘルプを参照してください。
*既存のリレーションは ProRelsetRelationsSet() への呼び出しで上書きされます。
関数 ProRelationEvalWithUnits() は、リレーションセットの行を評価し、結果の値を ProParamvalue 構造体での形で出力しますリレーションを評価する際にリレーションの単位を考慮する場合、入力引数 consider_unitstrue として指定します。その場合、リレーションの結果は単位付きで返ります。このデータ構造体の詳細については、コア: パラメータのセクションを参照してください。memb_vidx1 などの特定パターンのリレーションシンボルの使用はサポートされません。代わりに、これらのシンボルを対応する寸法値または数字で置き換え、個々に評価します。
関数 ProRelationEvalWithUnits() は外部シンボルの参照には使用できません。
8.0.0.0 以降で、関数 ProRelationEvalWithUnits() は廃止予定になっています。代わりに、関数 ProRelationEvalWithUnitsRefResolve() を使用します。
関数 ProRelationEvalWithUnitsRefResolve() は、リレーション行の右辺に指定されている定義式を評価し、構造体 ProParamvalue の形式で値を返します。別のモデル上のパラメータまたは寸法によってシンボルが参照されているリレーションは、関数 ProRelationEvalWithUnitsRefResolve() を使用して評価できます。リレーションを評価する際にリレーションの単位を考慮する場合、入力引数 consider_unitstrue として指定します。その場合、リレーションの結果は単位付きで返ります。このデータ構造体の詳細については、コア: パラメータのセクションを参照してください。memb_vidx1 などの特定パターンのリレーションシンボルの使用はサポートされません。代わりに、これらのシンボルを対応する寸法値または数字で置き換え、個々に評価します。
関数 ProRelsetUnitsSensitiveSet() は、指定されたリレーションを計算する際に単位を考慮する必要があることを指定します。リレーションを計算する際に単位を考慮する必要があるかどうかをチェックするには、関数 ProRelsetIsUnitsSensitive() を使用します。
これは役に立ちましたか?