A3DSDKFeature.h

Header file for representation item entities.

Author

Tech Soft 3D

Version

23.0

Date

January 2023

Copyright (c) 2010 - 2023 by Tech Soft 3D, Inc. All rights reserved.

Content

Data Structures

A3DFRMTreeData

Feature tree data Populates the A3DFRMTreeData structure.

A3DFRMParameterData

Feature parameter data structure.

A3DFRMTypeData

Structure describes the feature type.

A3DFRMStringData

data structure for strings values

A3DFRMDoubleData

data structure for double values

A3DFRMIntegerData

data structure for integers values

A3DFRMLinkedItemData

Feature Linked Item structure.

A3DFRMFeatureData

Structure for all feature information: type, data, connection, access to sub features.

A3DFRMGeomEntitiesData

data structure for representation items extracted from features

Functions

A3DFRMTreeGet()

Populates the A3DFRMTreeData structure.

A3DFRMParameterGet()

Populates the A3DFRMParameterData structure.

A3DFRMStringDataGet()

A3DFRMDoubleDataGet()

A3DFRMIntegerDataGet()

A3DFRMEnumDataGet()

A3DFRMLinkedItemGet()

brief Populates the A3DFRMLinkedItemData structure

A3DFRMFeatureGet()

brief Populates the A3DFRMFeatureData structure

A3DFRMFeatureGetTypeAsString()

Get the string associated to the feature type.

A3DFRMGetSpecificNodes()

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

A3DAsmPartDefinitionFeatureTreesGet()

Get all feature trees defined in the part definition.

A3DFRMGeomEntitiesExtract()

Create on the fly geometries related to the feature.

Functions

A3DStatus A3DFRMTreeGet(const A3DFRMTree *pTree, A3DFRMTreeData *pData)

Populates the A3DFRMTreeData structure.

Version

10.2

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INVALID_ENTITY_TYPE

  • A3D_ERROR

  • A3D_INVALID_LICENSE

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DFRMParameterGet(const A3DFRMParameter *pParameter, A3DFRMParameterData *pData)

Populates the A3DFRMParameterData structure.

Version

10.2

A3DStatus A3DFRMStringDataGet(const A3DFRMFeature *pFeature, A3DFRMStringData *pData)

Version

10.2

A3DStatus A3DFRMDoubleDataGet(const A3DFRMFeature *pFeature, A3DFRMDoubleData *pData)

Version

10.2

A3DStatus A3DFRMIntegerDataGet(const A3DFRMFeature *pFeature, A3DFRMIntegerData *pData)

Version

10.2

A3DStatus A3DFRMEnumDataGet(const A3DFRMFeature *pFeature, A3DInt32 *m_piEnumValue, A3DUTF8Char **ppcValueAsString)

Version

10.2

A3DStatus A3DFRMLinkedItemGet(const A3DFRMLinkedItem *p, A3DFRMLinkedItemData *pData)

brief Populates the A3DFRMLinkedItemData structure

Version

10.2

A3DStatus A3DFRMFeatureGet(const A3DFRMFeature *pFeature, A3DFRMFeatureData *pData)

brief Populates the A3DFRMFeatureData structure

Version

10.2

Parameters
  • pFeature – feature pointer

  • pData – feature data

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_ERROR

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DFRMFeatureGetTypeAsString(const A3DFRMFeature *pFeature, A3DUTF8Char **ppcFeatureType)

Get the string associated to the feature type.

Version

10.2

Parameters
  • pFeature – feature pointer

  • ppcFeatureType – associated string

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_ERROR

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DFRMGetSpecificNodes(const A3DFRMTree *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
  • pTree[in] The feature tree to query features from.

  • eCADType[in] CAD type of feature (Hole, Pattern, …).

  • piSize[out] The number of feature founds. Corresponds to the size of pppFeatureNodes.

  • pppFeatureNodes[out] An array of size piSize containing the found features (Hole, Pattern, …).

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_ERROR

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

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

Get all feature trees defined in the part definition.

Deprecated:

This function is deprecated. Please use the A3DFRMTree who are in the A3DAsmProductOccurrenceData. version 12.

Version

10.2

Parameters
  • pPartDefinition – part definition to query

  • puiSize – number of feature trees contained

  • pppFeatureTrees – feature tree array

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_ERROR

  • A3D_INVALID_LICENSE

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

A3DStatus A3DFRMGeomEntitiesExtract(const A3DFRMFeature *pFeature, A3DFRMGeomEntitiesData *pFeatureGeomEntities)

Create on the fly geometries related to the feature.

Version

12.2

Parameters
  • pFeature – feature pointer

  • pFeatureGeomEntities – struct containing the array of extracted geometries

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INITIALIZE_NOT_CALLED

  • A3D_ERROR

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code