高度なカスタマイズ > ビジネスロジックのカスタマイズ > Windchill Visualization Services のカスタマイズ > 干渉検出 > ソリューション
  
ソリューション
カスタムコードに Public WVS API を実装し、適切な WVS プロパティの変更により WVS がこのカスタムコードを認識するようにして、干渉検出をカスタマイズします。
前提となる知識
この最良事例を適用するには、以下を理解しておく必要があります。
Java 開発
干渉検出、干渉レポートなどの WVS 干渉検出の概念
以下の「追加リソース」セクションには、これらの各項目に対する参照が含まれています。
ソリューションエレメント
エレメント
タイプ
説明
InterferenceDetectionHooks.java
Java ファイル
このドキュメントで説明する、カスタマイズを実装するためのコード例が含まれます。
ランタイムの場所: Windchill/prog_examples/wvs/com/ptc/wvs/InterferenceDetectionHooks.java
InterferenceInfo.class
クラスファイル
Creo View クライアントアダプタによって生成された干渉レポートに含まれる、1 つの干渉に関するすべての情報を表示します。WVS 干渉プロセッサが新しい干渉オブジェクトを作成したり、既存の干渉オブジェクトを更新する場合に使用します。
ランタイムの場所: <Windchill>/codebase/com/ptc/wvs/server/publish/InterferenceInfo.class
WTDocument.class
クラスファイル
干渉定義は WTDocument のサブタイプです。
ランタイムの場所: <Windchill>/codebase/wt/doc/WTDocument.class
wvs.properties.xconf
XConf ファイル
Windchill Visualization Service を設定して特定のカスタマイズコードを使用できるようにするための特定のプロパティが含まれます。
ランタイムの場所: <Windchill>/codebase/WEB-INF/conf/wvs.properties.xconf
LifeCycleManagedWtMarkUp
クラスファイル
Windchill 内のすべての干渉オブジェクトと干渉レポートオブジェクトは LifeCycleManagedWtMarkUps です。
ランタイムの場所: <Windchill>/codebase/ wt/viewmarkup/LifeCycleManagedWtMarkUp.class
手順: 干渉属性を決定するカスタマイズの呼び出し
タスク実施者、説明、状態、ユーザーの重要度、名前などの干渉属性を設定するためのカスタムフックを作成するには、以下のステップを実行します。
1. 静的メソッドで Java クラスを作成します。この静的メソッドでは、引数とリターンタイプが次の例で定義されたメソッドと適合します。このカスタマイズでは、既存の干渉オブジェクトの更新に使用される属性値セットを返し、新しく作成される干渉オブジェクトの異なる属性値セットを返します。
より包括的な例については、<Windchill>/prog_examples/wvs/com/ptc/wvs にある InterferenceDetectionHooks.java を参照してください。
2. <Windchill>/codebase/wvs.properties.xconf を更新して、カスタマイズフックを呼び出すための WVS 干渉プロセッサを設定します。このステップの実行方法に関する詳細は、wvs.properties.xconf のプロパティ "interferencedetection.report.getinterferenceattributevaluesmethod" のドキュメンテーションを参照してください。この設定例では、XConf エントリが次のようになります。
<Property name="interferencedetection.report.
getinterferenceattributevaluesmethod " default
="ext.customhooks.MyCustomClass/getInterferenceAttributeValues"/>
手順: カスタマイズを呼び出して、干渉の対応関係を決定するためにデフォルトの規則セットを変更する。
Creo View クライアントアダプタが生成した干渉レポートで説明されている干渉が、前の実行時に作成された干渉レポートに存在する干渉定義に関連付けられた干渉オブジェクトのいずれかと等しいかどうかを、WVS 干渉プロセッサが決定する必要があります。既存の干渉オブジェクトが干渉レポートで説明されている干渉と等しいかどうかを決定するために使用するデフォルトの規則セットは以下のとおりです。
干渉する 2 つの部品のマスター参照は同じである必要があります。
干渉する 2 つの部品のコンポーネントの干渉パスは同じである必要があります。
干渉のタイプが同じである必要があります。
干渉の対応関係を決定するデフォルト規則をオーバーライドするためにカスタムフックを作成するには、以下のステップを完了します。
1. 静的メソッドで Java クラスを作成します。この静的メソッドでは、引数とリターンタイプが次の例で定義されたメソッドと適合します。このカスタマイズでは、WVS API を呼び出して最初に対応関係を決定するすべてのデフォルト規則が使用されます。API が "true" を返すと、干渉アイテムのグループ名も対応しているかどうかを確認するための追加チェックが実行されます。
より包括的な例については、<Windchill>/prog_examples/wvs/com/ptc/wvs にある InterferenceDetectionHooks.java を参照してください。
2. <Windchill>/codebase/wvs.properties.xconf を更新して、カスタマイズフックを呼び出すための WVS 干渉プロセッサを設定します。
このステップの実行方法に関する詳細は、wvs.properties.xconf のプロパティ "interferencedetection.report.getinterferenceattributevaluesmethod" のドキュメンテーションを参照してください。
この設定例では、XConf エントリが次のようになります。<Property name="interferencedetection.report.isinterferenceequivalentmethod " default="ext.customhooks.MyCustomClass/isInterferenceEquivalent"/>