NURBS Surface (the base surface entity)

Types

A3DSurfNurbsData

A3DEBSplineSurfaceForm

Fields

kA3DBSplineSurfaceFormPlane

kA3DBSplineSurfaceFormCylindrical

kA3DBSplineSurfaceFormConical

kA3DBSplineSurfaceFormSpherical

kA3DBSplineSurfaceFormRevolution

kA3DBSplineSurfaceFormRuled

kA3DBSplineSurfaceFormGeneralizedCone

kA3DBSplineSurfaceFormQuadric

kA3DBSplineSurfaceFormLinearExtrusion

kA3DBSplineSurfaceFormUnspecified

kA3DBSplineSurfaceFormPolynomial

Functions

A3DStatus

A3DSurfNurbsGet

A3DStatus

A3DSurfNurbsCreate

A3DStatus

A3DSurfBaseGetAsNurbs

A3DStatus

A3DSurfBaseWithDomainGetAsNurbs

Detailed Description

group a3d_srfnurbs

Entity type is kA3DTypeSurfNurbs.

Note

This surface type contains neither A3DUVParameterizationData nor A3DMiscCartesianTransformationData.

Type Documentation

enum A3DEBSplineSurfaceForm

Enumeration for characterizing a surface’s form.

Version

2.0

Values:

enumerator kA3DBSplineSurfaceFormPlane

Planar surface.

enumerator kA3DBSplineSurfaceFormCylindrical

Cylindrical surface.

enumerator kA3DBSplineSurfaceFormConical

Conical surface.

enumerator kA3DBSplineSurfaceFormSpherical

Spherical surface.

enumerator kA3DBSplineSurfaceFormRevolution

Surface of revolution.

enumerator kA3DBSplineSurfaceFormRuled

Ruled surface.

enumerator kA3DBSplineSurfaceFormGeneralizedCone

Cone.

enumerator kA3DBSplineSurfaceFormQuadric

Quadric surface.

enumerator kA3DBSplineSurfaceFormLinearExtrusion

Surface of extrusion.

enumerator kA3DBSplineSurfaceFormUnspecified

Unspecified.

enumerator kA3DBSplineSurfaceFormPolynomial

Polynomial surface.

Function Documentation

A3DStatus A3DSurfNurbsGet(const A3DSurfNurbs *pSrf, A3DSurfNurbsData *pData)

Populates the A3DSurfNurbsData structure.

Version

2.0

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

Returns

A3D_SUCCESS in case of success or an error code

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

Creates an A3DSurfNurbs from an A3DSurfNurbsData structure.

Version

2.0

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INTERVAL_INCONSISTENT_DATA

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

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

Populates the A3DSurfNurbsData structure from any type of A3DSurfBase.

Deprecated:

This structure will be deprecated with HE 2023. Please use A3DSurfBaseWithDomainGetAsNurbs instead.

Version

2.0

This structure must be freed with A3DSurfNurbsGet call.

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.

Return values
  • A3D_INVALID_DATA_STRUCT_SIZE

  • A3D_INVALID_DATA_STRUCT_NULL

  • A3D_INTERVAL_INCONSISTENT_DATA

  • A3D_SRF_NURBS_TOO_TINY_TOLERANCE

  • A3D_SUCCESS

Returns

A3D_SUCCESS in case of success or an error code

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.

This structure must be freed with A3DSurfNurbsGet call.

Version

14.2

Warning

This function can modify the parameterization for surface. You must treat related entities accordingly.

Warning

If pOptDomain is defined it must be contained by surface domaine.

Warning

See note on Tolerance explanation at A3DCrvBaseGetAsNurbs definition.

Warning

This function can be called with any type of curve.

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

Returns

A3D_SUCCESS in case of success or an error code