Draw Module
Types
Fields
|
|
Detailed Description
- group a3d_draw_module
Draws model file entities using callback functions you provide.
- Deprecated:
The Draw module is deprecated and will be removed in version 2026.1.0.
The functions and callback functions in this module allow you to draw PRC model files using drawing functions that you provide.
Field Documentation
- A3DStatus deprecated_A3DDrawInitCallbacks param
Initializes the callbacks used for drawing.
Function to traverse the entire modelfile and simplify all curves and surfaces to analytics if possible, according to a certain tolerance.
Removes all tessellation and geometry of an A3DAsmProductOccurrence entity.
delete RTF data created by deprecated_A3DMkpRTFInit
Get each independent field of a RTF data.
Initialize RTF data for parsing.
Populates the A3DSurfNurbsData structure from any type of A3DSurfBase.
Get all feature trees defined in the part definition.
Enables internal SIGSEGV handling (Linux only)
Disables internal SIGSEGV handling (Linux only)
Function to compute Hidden Line Removal on a A3DAsmModelFile.
Function to project Point Cloud on BrepModel with a A3DProjectPointCloudManager.
Function to get surface as analytic according to a certain tolerance.
Function to get curves as analytic (line or circle) according to a certain tolerance Try to use UV curves from Edges if exist, otherwise use 3D Curves.
Function to get curves as analytic (line or circle) according to a certain tolerance.
Calculates the bounding box of the model file entity, without using any callback functions.
Draws the markup item entities, using the callbacks defined by deprecated_A3DDrawInitCallbacks.
Draws the representation item entities, using the callbacks defined by deprecated_A3DDrawInitCallbacks.
Draws the model file entities, using the callbacks defined by deprecated_A3DDrawInitCallbacks.
- Deprecated:
The Draw module is deprecated and will be removed in version 2026.1.0.
- Deprecated:
The Draw module is deprecated and will be removed in version 2026.1.0.
uiDrawFlags
argument, use the flags defined in Flags for Drawing Model File Entities.- Version
2.0
- Version
2.0
- Deprecated:
The Draw module is deprecated and will be removed in version 2026.1.0.
- Deprecated:
The Draw module is deprecated and will be removed in version 2026.1.0.
- Deprecated:
The Draw module is deprecated and will be removed in version 2026.1.0.
uiDrawFlags
argument, use the flags defined in Flags for Drawing Model File Entities.- Version
2.0
- Version
2.0
- Version
2.0
Use A3DEntityDelete to delete the analytic curve after using it.
- Deprecated:
Use A3DSimplifyCurveWithAnalytics instead. This will be removed in version 2026.1.0.
- Deprecated:
use A3DSimplifyCurveWithAnalyticsFromCoEdge instead. This will be removed in version 2026.1.0.
- Deprecated:
use A3DSimplifySurfaceWithAnalytics instead. This will be removed in version 2026.1.0.
- Version
5.0
- Version
5.0
- Version
5.0
- Deprecated:
use A3DProjectPointCloud3 instead. This will be removed in version 2026.1.0.
- Version
8.1
Memory Management
In case of success,
ppProjectedPointCloud
contains heap allocated memory you are responsible for. To free the memory onppProjectedPointCloud
, calldeprecated_A3DProjectPointCloud2
by settingpManager
to 0. In this case, all other parameters are ignored:deprecated_A3DProjectPointCloud2(0, 0, 0, A3D_FALSE, 0, 0.0, ppProjectedPointCloud);
- Deprecated:
use A3DComputeOrthoHLROnModelFile3 instead. This will be removed in version 2026.1.0.
- Version
8.1
- Deprecated:
use A3DComputeOrthoHLROnModelFile3 instead. This will be removed in version 2026.1.0.
- Version
9.0
Call deprecated_A3DComputeOrthoHLROnModelFile2( NULL, NULL, NULL, pNumberHLRRepItem, pppHLRRepItem) to release pppHLRRepItem structure ( internal A3DCrvPolyLine was not released)
If
pOptMrkRView
is a cutting view,psSectionParametersData
can be set to0
. In this case, the cutting planes withinpOptMrkRView
are used for the computation. Planes must to ordered and be set a profile, otherwise the function will return#A3D_TOOLS_INVALID_SECTION_PLANE
.This function deactivates the handling of the SIGSEGV signal on Linux. By default, SIGSEGV is handled and an exception is thrown to return A3D_EXCEPTION.
Remark
If the model file doesn’t contain any representation item, the function will return
#A3D_INVALID_DATA error
- Deprecated:
the default behavior has changed with 11.2 to disable the SIGSEGV handling This will be removed in version 2026.1.0.
- Deprecated:
the default behavior has changed with 11.2 to disable the SIGSEGV handling This will be removed in version 2026.1.0.
- Deprecated:
This function is deprecated. Please use the A3DFRMTree which are in the A3DAsmProductOccurrenceData instead.
- Deprecated:
This function has been deprecated since HE 2023. Please use A3DSurfBaseWithDomainGetAsNurbs instead. This will be removed in version 2026.1.0.
- Version
12. This will be removed in version 2026.1.0.
- Version
10.2
- Version
2.0
This structure must be freed with A3DSurfNurbsGet call.
- Deprecated:
This function is deprecated. Please use A3DMkpRTFFieldCreate instead to implement the same behaviour. This will be removed in version 2026.1.0.
- Version
4.2
- Deprecated:
This function is deprecated. Please use A3DMkpRTFFieldGet instead to implement the same behaviour. This will be removed in version 2026.1.0.
- Version
4.2
- Deprecated:
This function is deprecated. Please use A3DMkpRTFFieldDelete instead to implement the same behaviour. This will be removed in version 2026.1.0.
- Version
4.2
- Deprecated:
Use A3DAsmModelFileUnloadParts instead. This will be removed in version 2026.1.0.
- Deprecated:
Use A3DSimplifyModelFileWithAnalytics instead. This will be removed in version 2026.1.0.
- Version
3.1
- Version
5.2
Warning
must be deleted by the user
Warning
If A3DProjectPointCloudManagerCreateFromRI is used to create pManager, and A3DProjectPointCloudManagerDataFromRI::m_bUseExactComputation is set to false, you can’t set bUseExactComputation to true. In this case, an A3D_INVALID_DATA error is returned.
Warning
You must call this function before
A3DDllInitialize
Warning
You must call this function before
A3DDllInitialize
Warning
This function can modify the parameterization for surface. You must treat related entities accordingly.
Warning
See note on Tolerance explanation at A3DCrvBaseGetAsNurbs definition.
Warning
This function can be called with any type of curve.
- Retval A3D_INITIALIZE_NOT_CALLED:
- Retval A3D_INVALID_DATA_STRUCT_SIZE:
- Retval A3D_INVALID_DATA_STRUCT_NULL:
- Retval A3D_INVALID_ENTITY_NULL:
- Retval A3D_INVALID_ENTITY_TYPE:
- Retval A3D_SUCCESS:
- Return:
A3D_SUCCESS
on success, or an error code on failure- Retval A3D_INITIALIZE_NOT_CALLED:
- Retval A3D_INVALID_DATA_STRUCT_SIZE:
- Retval A3D_INVALID_DATA_STRUCT_NULL:
- Retval A3D_INVALID_ENTITY_NULL:
- Retval A3D_INVALID_ENTITY_TYPE:
- Retval A3D_SUCCESS:
- Retval A3D_INITIALIZE_NOT_CALLED:
- Retval A3D_INVALID_DATA_STRUCT_SIZE:
- Retval A3D_INVALID_DATA_STRUCT_NULL:
- Retval A3D_INVALID_ENTITY_NULL:
- Retval A3D_INVALID_ENTITY_TYPE:
- Retval A3D_SUCCESS:
- Retval A3D_INITIALIZE_NOT_CALLED:
- Retval A3D_INVALID_DATA_STRUCT_SIZE:
- Retval A3D_INVALID_DATA_STRUCT_NULL:
- Retval A3D_INVALID_ENTITY_NULL:
- Retval A3D_INVALID_ENTITY_TYPE:
- Retval A3D_SUCCESS:
- Return:
A3D_SUCCESS
on success, or an error code on failure- Return:
A3D_SUCCESS
on success, or an error code on failure- Return:
A3D_SUCCESS
on success, or an error code on failure- Retval A3D_INITIALIZE_NOT_CALLED:
- Retval A3D_INVALID_DATA_STRUCT_SIZE:
- Retval A3D_INVALID_DATA_STRUCT_NULL:
- Retval A3D_INVALID_ENTITY_NULL:
- Retval A3D_INVALID_ENTITY_TYPE:
- Retval A3D_SUCCESS:
- Retval A3D_SUCCESS:
if an analytic has been created
- Retval A3D_ERROR:
- Retval A3D_SUCCESS:
if an analytic has been created
- Retval A3D_ERROR:
- Return:
A3D_SUCCESS
on success, or an error code on failure- Return:
A3D_SUCCESS
on success, or an error code on failure- Return:
A3D_SUCCESS
on success, or an error code on failure- Param pSrf:
[in] The input surface
- Param dTol:
[in] Tolerance
- Param pAnalyticSurface:
[out] The new analytic surface.
- Param peAnalyticType:
[out] The type of analytic surface
- Retval A3D_SUCCESS:
- Retval A3D_INVALID_ENTITY_NULL:
- Retval A3D_INVALID_ENTITY_TYPE:
- Retval A3D_ERROR:
- Return:
A3D_SUCCESS
on success, or an error code on failure- Param pManager:
[in] A3DProjectPointCloudManager created by A3DProjectPointCloudManagerCreateFromModelFile function.
- Param uPointCloudSize:
[in] Number of points in pPointCloudToProject.
- Param pPointCloudToProject:
[in] Point cloud to project. This point cloud must be in the same coordinate system as the BrepData structures stored in BrepModel.
- Param bUseExactComputation:
[in] Flag to use exact topology. When this flag is false, the algorithm drops the point cloud on the faceted geometry, otherwise, the exact topology is used.
- Param uNbThreads:
[in] Number of threads wanted. 0 means non multi-thread. Please avoid setting a number of threads larger than the number of CPU cores.
- Param dInsidePointEdgeTolerance:
[in] Tolerance used to check if projection point which is inside a face is on edge.
- Param ppProjectedPointCloud:
[out] Point cloud projected.
- Retval A3D_SUCCESS:
- Retval A3D_INVALID_DATA_STRUCT_NULL:
- Retval A3D_INVALID_DATA_STRUCT_SIZE:
- Retval A3D_INVALID_ENTITY_TYPE:
- Retval A3D_INVALID_DATA:
- Retval A3D_ERROR:
- Return:
A3D_SUCCESS
on success, or an error code on failure- Param pModelFile:
[in] Model file to work on.
- Param pOptMrkRView:
[in] optional A3DMkpView (cut, filter and/or move entities).
- Param psHLRViewPlaneData:
[in] define a plane as a camera with orthogonal projection.
- Param pNumberHLRData:
[out] Number A3DHLRRepresentationItemData.
- Param ppHLRData:
[out] HLR curve result grouped by A3DRiRepresentationItem entity. pppHLRData is automatically allocated by deprecated_A3DComputeOrthoHLROnModelFile.
- Retval A3D_SUCCESS:
- Retval A3D_INVALID_DATA_STRUCT_NULL:
- Retval A3D_INVALID_DATA_STRUCT_SIZE:
- Retval A3D_INVALID_ENTITY_TYPE:
- Retval A3D_INVALID_DATA:
- Retval A3D_ERROR:
- Retval A3D_INCOMPATIBLE_FUNCTION_WITH_KEEP_PARSED_ENTITY_MODE:
- Return:
A3D_SUCCESS
on success, or an error code on failure- Param pModelFile:
[in] Model file to work on.
- Param pOptMrkRView:
[in] optional A3DMkpView (cut, filter and/or move entities).
- Param psHLRViewPlaneData:
[in] define a plane as a camera with orthogonal projection.
- Param pNumberHLRRepItem:
[out] Number A3DHLRRepresentationItem.
- Param pppHLRRepItem:
[out] HLR curve result grouped by A3DRiRepresentationItem entity. pppHLRRepItem is automatically allocated by deprecated_A3DComputeOrthoHLROnModelFile2.
- Retval A3D_SUCCESS:
- Retval A3D_INVALID_DATA_STRUCT_NULL:
- Retval A3D_INVALID_DATA_STRUCT_SIZE:
- Retval A3D_INVALID_ENTITY_TYPE:
- Retval A3D_INVALID_DATA:
- Retval A3D_ERROR:
- Retval A3D_TOOLS_INVALID_SECTION_PLANE:
- Retval A3D_INCOMPATIBLE_FUNCTION_WITH_KEEP_PARSED_ENTITY_MODE:
- Return:
A3D_SUCCESS
on success, or an error code on failure- Retval A3D_SUCCESS:
- Retval A3D_ERROR:
if not on Linux
- Return:
A3D_SUCCESS
on success, or an error code on failure- Retval A3D_SUCCESS:
- Retval A3D_ERROR:
if not on Linux
- Param pPartDefinition:
part definition to query
- Param puiSize:
number of feature trees contained
- Param pppFeatureTrees:
feature tree array
- Retval A3D_INVALID_DATA_STRUCT_SIZE:
- Retval A3D_INVALID_DATA_STRUCT_NULL:
- Retval A3D_ERROR:
- Retval A3D_INVALID_LICENSE:
- Retval A3D_SUCCESS:
- Return:
A3D_SUCCESS
on success, or an error code on failure- Return:
A3D_SUCCESS
on success, or an error code on failure- Retval A3D_INVALID_DATA_STRUCT_SIZE:
- Retval A3D_INVALID_DATA_STRUCT_NULL:
- Retval A3D_INTERVAL_INCONSISTENT_DATA:
- Retval A3D_SRF_NURBS_TOO_TINY_TOLERANCE:
- Retval A3D_SUCCESS:
- Return:
A3D_SUCCESS
on success, or an error code on failure- Retval A3D_ERROR:
- Retval A3D_SUCCESS:
- Return:
A3D_SUCCESS
on success, or an error code on failure- Retval A3D_ERROR:
- Retval A3D_SUCCESS:
- Return:
A3D_SUCCESS
on success, or an error code on failure- Retval A3D_ERROR:
- Retval A3D_SUCCESS:
- Retval A3D_INVALID_DATA_STRUCT_SIZE:
- Retval A3D_INVALID_DATA_STRUCT_NULL:
- Retval A3D_PRODUCTOCCURRENCE_INCONSISTENT_PART_EXTERNAL:
- Retval A3D_PRODUCTOCCURRENCE_INCONSISTENT_EMPTY:
- Retval A3D_SUCCESS:
- Param p:
[inout] The input modelfile.
- Param dTol:
[in] The tolerance.
- Retval A3D_SUCCESS:
- Retval A3D_ERROR:
- Retval A3D_INCOMPATIBLE_FUNCTION_WITH_KEEP_PARSED_ENTITY_MODE:
- Return:
A3D_SUCCESS
on success, or an error code on failure- Return:
A3D_SUCCESS
on success, or an error code on failure- Return:
A3D_SUCCESS
on success, or an error code on failure