このセクションでは、フィーチャーからの要素ツリーの抽出とその解析方法について説明します。フィーチャー全体および所有するソリッドでのその役割について照会する方法については、
コア: フィーチャーのセクションの「フィーチャー照会」のセクションを参照してください。
関数
ProFeatureElemtreeCreate() は、
Creo Parametric データベースの内容を記述するフィーチャー要素ツリーを作成します。これが適用できるのは、
ProFeatureCreate() を使用して作成できるフィーチャータイプだけです (
フィーチャー作成の概要の説明を参照)。ツリーは
ProElement*Get()、
ProElement*Visit()、および
ProElementArrayCount() などの読み取りアクセス関数を使用して解析できます。
フィーチャー要素および
フィーチャー要素パスのセクションの説明を参照してください。
関数
ProFeatureElemtreeExtract() は、指定されたフィーチャーのフィーチャー要素ツリーを作成します。アセンブリの場合には、フィーチャーの外部参照のパスを解決することもできます。
ProFeatureElemtreeCreate() から抽出されたフィーチャー要素ツリーのコピーを解放するには、関数
ProFeatureElemtreeFree() および
ProFeatureElemtreeExtract() を使用します。関数
ProElementFree() は、要素ツリーに関連付けられているフィーチャー固有のランタイムデータをすべて解放するとはかぎらないので、一部のフィーチャーでメモリリークが発生する可能性があります。
解析のために要素ツリー全体をコピーしなくても、フィーチャーから指定された要素の情報を直接抽出することができます。このセクションの残りの関数は、その目的で使用されます。
関数
ProFeatureElemIsVisible() は、
Creo Parametric がツリーに追加した要素を内部的な利用のために区別をするだけで、そのタイプのフィーチャーの作成のために定義されたり、ドキュメントに記述されることはありません。
関数
ProFeatureIsIncomplete() は、
Creo Parametric データベース内で要素ツリーが不完全なフィーチャーを識別します。こうした関数は、
ProFeatureCreate() を呼び出すときに
PRO_FEAT_CR_INCOMPLETE_FEAT オプションを使って起動することができ、フィーチャーが完成するまでジオメトリを立ち上げません。フィーチャーが不完全な場合は、関数
ProFeatureElemIsIncomplete() を使ってツリー内のどの要素が失敗しているのかを調べることができます。入力は
ProFeature および
ProElempath です。