Adapt and replace all B-rep in model file

Data Structures

struct  A3DCopyAndAdaptBrepModelErrorData
 Copy and convert to NURBS error result. More...
 

Functions

A3DStatus A3DAdaptAndReplaceAllBrepInModelFile (A3DAsmModelFile *pModelFile, const A3DCopyAndAdaptBrepModelData *psSetting)
 Entity Convert to NURBS facility. More...
 
A3DStatus A3DAdaptAndReplaceAllBrepInModelFileAdvanced (A3DAsmModelFile *p, const A3DCopyAndAdaptBrepModelData *psSetting, A3DUns32 *puiNbErrors, A3DCopyAndAdaptBrepModelErrorData **pErrors)
 Entity Convert to NURBS facility. More...
 

Detailed Description

Function Documentation

A3DStatus A3DAdaptAndReplaceAllBrepInModelFile ( A3DAsmModelFile pModelFile,
const A3DCopyAndAdaptBrepModelData psSetting 
)

Entity Convert to NURBS facility.

Parameters
[in]pModelFileThe source model file to adapt.
[in]psSettingsThe structure that defines which types of B-rep you would like to convert to.
Returns
A3D_CRV_INVALID_PARAMETER if psSetting ->m_puiAcceptableCurves contains invalid types.
A3D_SRF_INVALID_PARAMETERS if psSetting->m_puiAcceptableSurfaces contains invalid types.
A3D_TOOLS_NURBSCONVERT_GENERAL_FAILURE

This function adapts all B-rep in a Model File to customers' needs. It enables the transformation of predetermined types of surfaces and curves as NURBS. It also permits computation of parametric curves and/or 3D curves, splitting periodic surfaces, etc.

These are the steps performed, according to the settings in A3DCopyAndAdaptBrepModelData:

  • For each face, the bearing surface is converted and then the 3D curves that are present
  • Surfaces are shrinked.
  • Cross-period UV curves are deleted if needed.
  • Faces are split at periodic seams and/or mid-parameter for closed surfaces.
  • Final UV curves are computed.
  • A second surface shrink is performed with new UVs.
  • Final 3D curves are computed.

In case where psSetting->m_bContinueOnError is A3D_TRUE, the function does not return any error code, unless it is considered as a fatal error. In that case, if you wish to know when an error occurs, use A3DAdaptAndReplaceAllBrepInModelFileAdvanced instead. Then check its puiNbErrors parameter.

See also
A3DAdaptAndReplaceAllBrepInModelFileAdvanced
Version
5.2
Note
When the function A3AdaptAndReplaceAllBrepInModelFile ends in error, you may try to set the parameters m_bSplitFaces and/or m_bForceComputeUV to A3D_FALSE and retry the conversion.
A3DStatus A3DAdaptAndReplaceAllBrepInModelFileAdvanced ( A3DAsmModelFile p,
const A3DCopyAndAdaptBrepModelData psSetting,
A3DUns32 puiNbErrors,
A3DCopyAndAdaptBrepModelErrorData **  pErrors 
)

Entity Convert to NURBS facility.

Same as A3DAdaptAndReplaceAllBrepInModelFile , but return status of each element in error if A3DCopyAndAdaptBrepModelData::m_bContinueOnError is set to true

puiNbErrors return the number of brep in error

pErrors corresponds to the list of error for each brep

Parameters
[in]pA pointer to the model file
[in]psSettingThe structure that defines which types of B-rep you would like to convert to
[out]puiNbErrorsNumber of brep in error
[out]pErrorslist of errors for each brep
Returns
A3D_TOOLS_CONTINUE_ON_ERROR if there is errors, but A3DCopyAndAdaptBrepModelData.m_bContinueOnError is set to true
A3D_INCOMPATIBLE_FUNCTION_WITH_KEEP_PARSED_ENTITY_MODE
Version
9.2