Data Structures

struct  A3DFRMFeatureTreeData
 Feature tree data Populates the A3DFRMFeatureTreeData structure. More...
 

Enumerations

enum  EA3DFRMEnumValue_ModeType {
  kA3DFRMEnumValue_ModeType_None = 0,
  kA3DFRMEnumValue_ModeType_Cut,
  kA3DFRMEnumValue_ModeType_CutOut,
  kA3DFRMEnumValue_ModeType_Surface,
  kA3DFRMEnumValue_ModeType_SurfaceCappedEnds,
  kA3DFRMEnumValue_ModeType_PatternGeometry,
  kA3DFRMEnumValue_ModeType_Symbolic
}
 Enumerate the possible types of mode type.
More...
 

Functions

A3DStatus A3DAsmPartDefinitionFeatureTreesGet (const A3DAsmPartDefinition *pPartDefinition, A3DUns32 *puiSize, A3DFRMFeatureTree ***pppFeatureTrees)
 Get all feature trees defined in the part definition. More...
 
A3DStatus A3DFRMFeatureTreeGet (const A3DFRMFeatureTree *pTree, A3DFRMFeatureTreeData *pData)
 Populates the A3DFRMFeatureTreeData structure. More...
 
A3DStatus A3DFRMGetSpecificNodes (const A3DFRMFeatureTree *pTree, EA3DFRMEnumValue_CadType eCADType, A3DUns32 *piSize, A3DFRMFeature ***pppFeatureNodes)
 Build a List of Features corresponding to a node with specific CAD type. More...
 

Detailed Description

CAD model are represented by a feature tree. A model tree is composed by nodes. Each of these nodes is a build step, whose definition parameters are stored in a feature. The following model is defined with construction entities, then a pad, and a hole.

frm_tree.png

The model trees are accessible through the product occurence by using the function A3DAsmProductOccurrenceGet, and the function A3DFRMFeatureTreeGet will populate the data structure. An array of feature trees is stored in A3DAsmProductOccurrenceData, usually there is only one feature tree by model.

In addition, the function A3DFRMGetSpecificNodes allows to directly get a list of features with a specific cad type. For instance, to get all features HOLE defined in the tree. In this case,

A3DUns32 iSize;
A3DFRMFeature** ppFeatureNodes;
A3DFRMGetSpecificNodes( pFRMFeatureTree, kA3DFRMEnumValue_CadType_Hole, &iSize, &ppFeatureNodes);
//...
A3DFRMGetSpecificNodes( NULL, kA3DFRMEnumValue_CadType_Hole, &iSize, &ppFeatureNodes);

Note that A3DFRMFeatureTree object is an abstraction of A3DRiSet, so it possible to directly call the function A3DFRMFeatureTreeGet on a set

A3DEEntityType eType=kA3DTypeUnknown;
A3DEntityGetType(pRepresentationItem,&eType);
if(eType == kA3DTypeRiSet)
{
if (A3DFRMFeatureTreeGet(pRepresentationItem, &sTreeData) == A3D_SUCCESS)
{
A3DFRMFeatureTreeGet(NULL, &sTreeData);
}
else
{
//regular RiSet
}
}

Enumeration Type Documentation

◆ EA3DFRMEnumValue_ModeType

Enumerate the possible types of mode type.

Version
10.2
Enumerator
kA3DFRMEnumValue_ModeType_None 
kA3DFRMEnumValue_ModeType_Cut 
kA3DFRMEnumValue_ModeType_CutOut 
kA3DFRMEnumValue_ModeType_Surface 
kA3DFRMEnumValue_ModeType_SurfaceCappedEnds 
kA3DFRMEnumValue_ModeType_PatternGeometry 
kA3DFRMEnumValue_ModeType_Symbolic 

Function Documentation

◆ A3DFRMFeatureTreeGet()

A3DStatus A3DFRMFeatureTreeGet ( const A3DFRMFeatureTree pTree,
A3DFRMFeatureTreeData pData 
)

Populates the A3DFRMFeatureTreeData structure.

Version
10.2
Returns
A3D_SUCCESS in case of success or an error code
Return values

◆ A3DFRMGetSpecificNodes()

A3DStatus A3DFRMGetSpecificNodes ( const A3DFRMFeatureTree pTree,
EA3DFRMEnumValue_CadType  eCADType,
A3DUns32 piSize,
A3DFRMFeature ***  pppFeatureNodes 
)

Build a List of Features corresponding to a node with specific CAD type.

Version
10.2
Parameters
eCADTypecad type of feature (Hole, Pattern, ...)
piSizenumber with the type specified
ppFeatureNodesfeatures found with the specific cad type (Hole, Pattern, ...)
Returns
A3D_SUCCESS in case of success or an error code
Return values

◆ A3DAsmPartDefinitionFeatureTreesGet()

A3DStatus A3DAsmPartDefinitionFeatureTreesGet ( const A3DAsmPartDefinition pPartDefinition,
A3DUns32 puiSize,
A3DFRMFeatureTree ***  pppFeatureTrees 
)

Get all feature trees defined in the part definition.

Deprecated:
This function is deprecated. Please use the A3DFRMFeatureTree who are in the A3DAsmProductOccurrenceData. version 12.
Version
10.2
Parameters
pPartDefinitionpart definition to query
piSizenumber of feature trees contained
pppFeatureTreesfeature tree array
Returns
A3D_SUCCESS in case of success or an error code
Return values