Data Structures

struct  A3DSurfNurbsData
 Nurbs surface structure. More...
 

Enumerations

enum  A3DEBSplineSurfaceForm {
  kA3DBSplineSurfaceFormPlane,
  kA3DBSplineSurfaceFormCylindrical,
  kA3DBSplineSurfaceFormConical,
  kA3DBSplineSurfaceFormSpherical,
  kA3DBSplineSurfaceFormRevolution,
  kA3DBSplineSurfaceFormRuled,
  kA3DBSplineSurfaceFormGeneralizedCone,
  kA3DBSplineSurfaceFormQuadric,
  kA3DBSplineSurfaceFormLinearExtrusion,
  kA3DBSplineSurfaceFormUnspecified,
  kA3DBSplineSurfaceFormPolynomial
}
 Enumeration for characterizing a surface's form. More...
 

Functions

A3DStatus A3DSurfBaseGetAsNurbs (const A3DSurfBase *pSrf, A3DDouble dTolerance, A3DBool bUseSameParameterization, A3DSurfNurbsData *pData)
 Populates the A3DSurfNurbsData structure from any type of A3DSurfBase. More...
 
A3DStatus A3DSurfBaseWithDomainGetAsNurbs (const A3DSurfBase *pSrf, const A3DDomainData *pOptDomain, A3DDouble dTolerance, A3DBool bUseSameParameterization, A3DSurfNurbsData *pData)
 Populates the A3DSurfNurbsData structure from any type of A3DSurfBase and an optional restriction domain A3DDomainData. More...
 
A3DStatus A3DSurfNurbsCreate (const A3DSurfNurbsData *pData, A3DSurfNurbs **ppSrf)
 Creates an A3DSurfNurbs from an A3DSurfNurbsData structure. More...
 
A3DStatus A3DSurfNurbsGet (const A3DSurfNurbs *pSrf, A3DSurfNurbsData *pData)
 Populates the A3DSurfNurbsData structure. More...
 

Detailed Description

Entity type is kA3DTypeSurfNurbs.

Note
This surface type contains neither A3DUVParameterizationData nor A3DMiscCartesianTransformationData.

Enumeration Type Documentation

◆ A3DEBSplineSurfaceForm

Enumeration for characterizing a surface's form.

Version
2.0
Enumerator
kA3DBSplineSurfaceFormPlane 

Planar surface.

kA3DBSplineSurfaceFormCylindrical 

Cylindrical surface.

kA3DBSplineSurfaceFormConical 

Conical surface.

kA3DBSplineSurfaceFormSpherical 

Spherical surface.

kA3DBSplineSurfaceFormRevolution 

Surface of revolution.

kA3DBSplineSurfaceFormRuled 

Ruled surface.

kA3DBSplineSurfaceFormGeneralizedCone 

Cone.

kA3DBSplineSurfaceFormQuadric 

Quadric surface.

kA3DBSplineSurfaceFormLinearExtrusion 

Surface of extrusion.

kA3DBSplineSurfaceFormUnspecified 

Unspecified.

kA3DBSplineSurfaceFormPolynomial 

Polynomial surface.

Function Documentation

◆ A3DSurfNurbsGet()

A3DStatus A3DSurfNurbsGet ( const A3DSurfNurbs pSrf,
A3DSurfNurbsData pData 
)

Populates the A3DSurfNurbsData structure.

Version
2.0
Returns
A3D_SUCCESS in case of success or an error code
Return values
A3D_INITIALIZE_NOT_CALLED
A3D_INVALID_DATA_STRUCT_SIZE
A3D_INVALID_DATA_STRUCT_NULL
A3D_INVALID_ENTITY_NULL
A3D_INVALID_ENTITY_TYPE
A3D_SUCCESS

◆ A3DSurfNurbsCreate()

A3DStatus A3DSurfNurbsCreate ( const A3DSurfNurbsData pData,
A3DSurfNurbs **  ppSrf 
)

Creates an A3DSurfNurbs from an A3DSurfNurbsData structure.

Version
2.0
Returns
A3D_SUCCESS in case of success or an error code
Return values
A3D_INVALID_DATA_STRUCT_SIZE
A3D_INVALID_DATA_STRUCT_NULL
A3D_INTERVAL_INCONSISTENT_DATA
A3D_SUCCESS

◆ A3DSurfBaseGetAsNurbs()

A3DStatus A3DSurfBaseGetAsNurbs ( const A3DSurfBase pSrf,
A3DDouble  dTolerance,
A3DBool  bUseSameParameterization,
A3DSurfNurbsData pData 
)

Populates the A3DSurfNurbsData structure from any type of A3DSurfBase.

Version
2.0
Deprecated:
This structure will be deprecated with HE 2023. Please use A3DSurfBaseWithDomainGetAsNurbs instead.

This structure must be freed with A3DSurfNurbsGet call.

Warning
This function can modify the parameterization for surface. You must treat related entities accordingly.
See note on Tolerance explanation at A3DCrvBaseGetAsNurbs definition.
This function can be called with any type of curve.
Returns
A3D_SUCCESS in case of success or an error code
Return values
A3D_INVALID_DATA_STRUCT_SIZE
A3D_INVALID_DATA_STRUCT_NULL
A3D_INTERVAL_INCONSISTENT_DATA
A3D_SRF_NURBS_TOO_TINY_TOLERANCE
A3D_SUCCESS

◆ A3DSurfBaseWithDomainGetAsNurbs()

A3DStatus A3DSurfBaseWithDomainGetAsNurbs ( const A3DSurfBase pSrf,
const A3DDomainData pOptDomain,
A3DDouble  dTolerance,
A3DBool  bUseSameParameterization,
A3DSurfNurbsData pData 
)

Populates the A3DSurfNurbsData structure from any type of A3DSurfBase and an optional restriction domain A3DDomainData.

Version
14.2

This structure must be freed with A3DSurfNurbsGet call.

Warning
This function can modify the parameterization for surface. You must treat related entities accordingly.
If pOptDomain is defined it must be contained by surface domaine.
See note on Tolerance explanation at A3DCrvBaseGetAsNurbs definition.
This function can be called with any type of curve.
Returns
A3D_SUCCESS in case of success or an error code
Return values
A3D_INVALID_DATA_STRUCT_SIZE
A3D_INVALID_DATA_STRUCT_NULL
A3D_INTERVAL_INCONSISTENT_DATA
A3D_SRF_NURBS_TOO_TINY_TOLERANCE
A3D_SRF_INVALID_PARAMETERS
A3D_SUCCESS