Compute HLR

Types

A3DHLRCurveData

A3DHLRSectionFaceData

A3DHLRRepresentationItemData

A3DHLROptionsData

Functions

A3DStatus

A3DComputeOrthoHLROnRepresentationItems

A3DStatus

A3DComputeOrthoHLROnModelFile3

A3DStatus

A3DHLRRepresentationItemGet

Detailed Description

group a3d_HLR_Compute

Compute HLR functions for model file.

See also

A3DComputeOthoHLROnRepresentationItem

See also

A3DComputeOrthoHLROnModelFile

Version

8.1

Function Documentation

A3DStatus A3DComputeOrthoHLROnRepresentationItems(A3DUns32 uiNbRepItems, A3DRiRepresentationItem const **apRepItems, A3DDouble **pOptPlacements, A3DHLRViewPlaneData const *psHLRViewPlaneData, A3DUns32 *pNumberHLRData, A3DHLRRepresentationItemData **pppHLRData)

Function to compute Hidden Line Removal on a set of A3DRiRepresentationItem.

Call A3DComputeOrthoHLROnRepresentationItems( 0, NULL, NULL, NULL, pNumberHLRData, pppHLRData) to release pppHLRData structure ( A3DCrvPolyLine was not released)

Version

8.1

Parameters:
  • uiNbRepItems[in] Number of A3DRiRepresentationItem.

  • apRepItems[in] set of A3DRiRepresentationItem.

  • pOptPlacements[in] Optional set of representation item placements (16 A3DDouble matrix).

  • psHLRViewPlaneData[in] define a plane as a camera with orthogonal projection.

  • pNumberHLRData[out] Number A3DHLRRepresentationItemData.

  • pppHLRData[out] HLR curve result grouped by A3DRiRepresentationItem entity. pppHLRData is automatically allocated by A3DComputeOrthoHLROnRepresentationItems.

Return values:
  • A3D_SUCCESS

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_ENTITY_TYPE

  • A3D_INVALID_DATA

  • A3D_INVALID_ENTITY_NULL – if apRepItems contains null pointers

  • A3D_ERROR

  • A3D_BREPDATA_INCONSISTENT_DATA – if bUseExactComputation is set and if is missing A3DTopoBrepData

  • A3D_TOPO_GEOMETRY_MISSING – if bUseExactComputation is set and if is missing UV curves

  • A3D_INCOMPATIBLE_FUNCTION_WITH_KEEP_PARSED_ENTITY_MODE

Returns:

A3D_SUCCESS on success, or an error code on failure

A3DStatus A3DComputeOrthoHLROnModelFile3(A3DAsmModelFile const *pModelFile, A3DMkpView const *pOptMrkRView, A3DHLRViewPlaneData const *psHLRViewPlaneData, A3DHLROptionsData const *psHLROptionsData, A3DUns32 *pNumberHLRRepItem, A3DHLRRepresentationItem ***ppHLRRepItems)

Function to compute Hidden Line Removal on a A3DAsmModelFile.

Call A3DComputeOrthoHLROnModelFile3( NULL, NULL, NULL, NULL, pNumberHLRRepItem, pppHLRRepItem) to release pppHLRRepItem structure ( internal A3DCrvPolyLine was not released)

Version

10.1

If pOptMrkRView is a cutting view, psSectionParametersData can be set to 0. In this case, the cutting planes within pOptMrkRView are used for the computation. Planes must to ordered and be set a profile, otherwise the function will return #A3D_TOOLS_INVALID_SECTION_PLANE.

Remark

If the model file doesn’t contain any representation item, the function will return #A3D_INVALID_DATA error

Parameters:
  • pModelFile[in] Model file to work on.

  • pOptMrkRView[in] optional A3DMkpView (cut, filter and/or move entities).

  • psHLRViewPlaneData[in] define a plane as a camera with orthogonal projection.

  • psHLROptionsData[in] define options used to compute HLR. if set to NULL, default A3DHLROptionsData value are used.

  • pNumberHLRRepItem[out] Number A3DHLRRepresentationItem.

  • ppHLRRepItems[out] HLR curve result grouped by A3DRiRepresentationItem entity. pppHLRRepItem is automatically allocated by A3DComputeOrthoHLROnModelFile.

Return values:
  • A3D_SUCCESS

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_ENTITY_TYPE

  • A3D_INVALID_DATA

  • A3D_ERROR

  • A3D_TOOLS_INVALID_SECTION_PLANE

  • A3D_INCOMPATIBLE_FUNCTION_WITH_KEEP_PARSED_ENTITY_MODE

Returns:

A3D_SUCCESS on success, or an error code on failure

A3DStatus A3DHLRRepresentationItemGet(A3DHLRRepresentationItem const *pHLRRepItem, A3DHLRRepresentationItemData *psRIData)

Populates the A3DHLRRepresentationItemData structure.

Call A3DHLRRepresentationItemGet( NULL, psRIData) to release psRIData structure ( A3DCrvPolyLine was not released)

Version

9.0

Parameters:
  • pHLRRepItem[in] The input entity

  • psRIData[out] The structure to populate

Return values:
  • A3D_SUCCESS

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_ENTITY_TYPE

  • A3D_ERROR

Returns:

A3D_SUCCESS on success, or an error code on failure