A3DSDKRepItems.h
Header file for representation item entities.
- Author
Tech Soft 3D
- Version
23.0
- Date
January 2023
- Copyright (c) 2010 - 2023 by Tech Soft 3D, Inc. All rights reserved.
Content
Data Structures
Representation Item Structure. |
|
Set structure. |
|
PointSet structure. |
|
Direction structure. |
|
Coordinate System structure. |
|
RiCurve structure. |
|
RiPlane structure. |
|
BrepModel structure. |
|
PolyBrepModel structure. |
|
PolyWire structure. |
Functions
Populates the A3DRiRepresentationItemData structure. |
|
Sets a previously created A3DRiRepresentationItem with an A3DRiRepresentationItemData structure. |
|
Create a new representation item by making a deep copy. |
|
Calculates the tessellation of a previously created A3DRiRepresentationItem with an A3DRWParamsTessellationData parameters. |
|
Function to release the tessellation stored on the representation item. |
|
Function to edit the coordinate system of a representation item. |
|
Populates the A3DRiSetData structure. |
|
Creates an A3DRiSet from A3DRiSetData structure. |
|
Replaces the old data of an A3DRiSet with the new A3DRiSetData structure. |
|
Populates the A3DRiPointSetData structure. |
|
Creates an A3DRiPointSet from an A3DRiPointSetData structure. |
|
Replaces the old data of an A3DRiPointSet with the new A3DRiPointSetData structure. |
|
Populates the A3DRiDirectionData structure. |
|
Creates an A3DRiDirection from an A3DRiDirectionData structure. |
|
Modifies an A3DRiDirection from an A3DRiDirectionData structure. |
|
Populates the A3DRiCoordinateSystemData structure. |
|
Creates an A3DRiCoordinateSystem from an A3DRiCoordinateSystemData structure. |
|
Modifies an A3DRiCoordinateSystem from an A3DRiCoordinateSystemData structure. |
|
Populates the A3DRiCurveData structure. |
|
Creates an A3DRiCurve from an A3DRiCurveData structure. |
|
Modifies an A3DRiCurve from an A3DRiCurveData structure. |
|
Get the geometrical element used to build the A3DRiCurve . |
|
Populates the A3DRiPlaneData structure. |
|
Creates an A3DSurfPlane from an A3DRiPlaneData structure. |
|
Modifies an A3DSurfPlane from an A3DRiPlaneData structure. |
|
Get the geometrical element used to build the A3DRiPlane . |
|
Populates the A3DRiBrepModelData structure. |
|
Creates an A3DRiBrepModel from an A3DRiBrepModelData structure. |
|
Modifies an A3DRiBrepModel from an A3DRiBrepModelData structure. |
|
Populates the A3DRiPolyBrepModelData structure. |
|
Creates an A3DRiPolyBrepModel from an A3DRiPolyBrepModelData structure. |
|
Modifies an A3DRiPolyBrepModel from an A3DRiPolyBrepModelData structure. |
|
Populates the A3DRiPolyWireData structure. |
|
Creates an A3DRiPolyWire from an A3DRiPolyWireData structure. |
Functions
-
A3DStatus A3DRiRepresentationItemGet(const A3DRiRepresentationItem *pRi, A3DRiRepresentationItemData *pData)
Populates the A3DRiRepresentationItemData 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 A3DRiRepresentationItemSet(A3DRiRepresentationItem *pRi, const A3DRiRepresentationItemData *pData)
Sets a previously created A3DRiRepresentationItem with an A3DRiRepresentationItemData structure.
- Version
2.0
Note
The A3DRiRepresentationItem entity is an abstract class. You cannot directly create this entity. Instead, use the appropriate derived function (such as A3DRiSetCreate or A3DRiPointSetCreate) to create a specific representation item entity. Then use this function to specify values in that entity base class. For example, this function specifies a value for the A3DRiRepresentationItemData::m_pCoordinateSystem member.
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_SET_INCONSISTENT_EMPTY –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiRepresentationItemDeepCopy(const A3DRiRepresentationItem *pRi, A3DRiRepresentationItem **ppNewRi)
Create a new representation item by making a deep copy.
Representation item data are copied, except coordinate system and surface are shared for optimization as for the rest of the model. There are some limitations:
ID is reset to 0, but topological item ids are kept.
Stored links are lost when a representation item is copied independently of the rest of the model. It’s up to the user to create new ones. An entity reference sets to describe the link between a datum plane and a body plane face will be removed.
Drawing block is not implemented.
Feature data on TfSet are not copied.
- Version
11.2
- Return values
A3D_INVALID_ENTITY_NULL –
A3D_INVALID_ENTITY_TYPE –
A3D_ERROR –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiRepresentationItemComputeTessellation(A3DRiRepresentationItem *pRi, const A3DRWParamsTessellationData *pTessellationParametersData)
Calculates the tessellation of a previously created A3DRiRepresentationItem with an A3DRWParamsTessellationData parameters.
- Version
4.0
Note
If the A3DRiRepresentationItem entity has already been tessellated, the previous tessellation will be replaced by the new one. This function works for brep models and curves only.
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_SET_INCONSISTENT_EMPTY –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiReleaseTessellation(A3DRiRepresentationItem *pRepresentationItem)
Function to release the tessellation stored on the representation item.
- Version
5.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiRepresentationItemEditCoordinateSystem(A3DRiCoordinateSystem *pNewCoordinateSystem, A3DRiRepresentationItem *pRepresentationItem)
Function to edit the coordinate system of a representation item.
- Version
9.2
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiSetGet(const A3DRiSet *pSet, A3DRiSetData *pData)
Populates the A3DRiSetData 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 A3DRiSetCreate(const A3DRiSetData *pData, A3DRiSet **ppSet)
Creates an A3DRiSet from A3DRiSetData structure.
- Version
2.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_SET_INCONSISTENT_EMPTY –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiSetEdit(const A3DRiSetData *pData, A3DRiSet *pSet)
Replaces the old data of an A3DRiSet with the new A3DRiSetData structure.
- Version
10.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_SET_INCONSISTENT_EMPTY –
A3D_INVALID_ENTITY_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiPointSetGet(const A3DRiPointSet *pPointSet, A3DRiPointSetData *pData)
Populates the A3DRiPointSetData 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 A3DRiPointSetCreate(const A3DRiPointSetData *pData, A3DRiPointSet **ppPointSet)
Creates an A3DRiPointSet from an A3DRiPointSetData structure.
- Version
2.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiPointSetEdit(const A3DRiPointSetData *pData, A3DRiPointSet *pPointSet)
Replaces the old data of an A3DRiPointSet with the new A3DRiPointSetData structure.
- Version
10.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_INVALID_ENTITY_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiDirectionGet(const A3DRiDirection *pDirection, A3DRiDirectionData *pData)
Populates the A3DRiDirectionData 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 A3DRiDirectionCreate(const A3DRiDirectionData *pData, A3DRiDirection **ppDirection)
Creates an A3DRiDirection from an A3DRiDirectionData structure.
- Todo:
Not yet implemented
- Version
2.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiDirectionEdit(const A3DRiDirectionData *pData, A3DRiDirection *pDirection)
Modifies an A3DRiDirection from an A3DRiDirectionData structure.
- Todo:
Not yet implemented
- Version
10.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_INVALID_ENTITY_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiCoordinateSystemGet(const A3DRiCoordinateSystem *pCoordinateSystem, A3DRiCoordinateSystemData *pData)
Populates the A3DRiCoordinateSystemData 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 A3DRiCoordinateSystemCreate(const A3DRiCoordinateSystemData *pData, A3DRiCoordinateSystem **ppCoordinateSystem)
Creates an A3DRiCoordinateSystem from an A3DRiCoordinateSystemData structure.
- Version
2.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_SET_INCONSISTENT_EMPTY –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiCoordinateSystemEdit(const A3DRiCoordinateSystemData *pData, A3DRiCoordinateSystem *pCoordinateSystem)
Modifies an A3DRiCoordinateSystem from an A3DRiCoordinateSystemData structure.
- Version
10.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_SET_INCONSISTENT_EMPTY –
A3D_INVALID_ENTITY_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiCurveGet(const A3DRiCurve *pRICrv, A3DRiCurveData *pData)
Populates the A3DRiCurveData 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 A3DRiCurveCreate(const A3DRiCurveData *pData, A3DRiCurve **ppRICrv)
Creates an A3DRiCurve from an A3DRiCurveData structure.
- Version
2.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiCurveEdit(const A3DRiCurveData *pData, A3DRiCurve *pRICrv)
Modifies an A3DRiCurve from an A3DRiCurveData structure.
- Version
10.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_INVALID_ENTITY_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiCurveSupportGet(const A3DRiCurve *pRiCurve, A3DMiscMarkupLinkedItem **ppLinkedItem)
Get the geometrical element used to build the A3DRiCurve.
- Version
6.0
- Parameters
pRiCurve – [in] The A3DRiCurve to query
ppLinkedItem – [out] The entity used to build
pRiCurve
- 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 A3DRiPlaneGet(const A3DRiPlane *pRiPlane, A3DRiPlaneData *pData)
Populates the A3DRiPlaneData 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 A3DRiPlaneCreate(const A3DRiPlaneData *pData, A3DRiPlane **ppRIPlane)
Creates an A3DSurfPlane from an A3DRiPlaneData structure.
- Version
2.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiPlaneEdit(const A3DRiPlaneData *pData, A3DRiPlane *pRIPlane)
Modifies an A3DSurfPlane from an A3DRiPlaneData structure.
- Version
10.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_INVALID_ENTITY_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiPlaneSupportGet(const A3DRiPlane *pRiPlane, A3DMiscMarkupLinkedItem **ppLinkedItem)
Get the geometrical element used to build the A3DRiPlane.
- Version
6.0
- Parameters
pRiPlane – [in] The A3DRiPlane to query
ppLinkedItem – [out] The entity used to build
pRiPlane
- 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 A3DRiBrepModelGet(const A3DRiBrepModel *pRIBrepModel, A3DRiBrepModelData *pData)
Populates the A3DRiBrepModelData 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 A3DRiBrepModelCreate(const A3DRiBrepModelData *pData, A3DRiBrepModel **ppRIBrepModel)
Creates an A3DRiBrepModel from an A3DRiBrepModelData structure.
- Version
2.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiBrepModelEdit(const A3DRiBrepModelData *pData, A3DRiBrepModel *pRIBrepModel)
Modifies an A3DRiBrepModel from an A3DRiBrepModelData structure.
- Version
10.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_INVALID_ENTITY_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiPolyBrepModelGet(const A3DRiPolyBrepModel *pRIPolyBrepModel, A3DRiPolyBrepModelData *pData)
Populates the A3DRiPolyBrepModelData 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 A3DRiPolyBrepModelCreate(const A3DRiPolyBrepModelData *pData, A3DRiPolyBrepModel **ppRIPolyBrepModel)
Creates an A3DRiPolyBrepModel from an A3DRiPolyBrepModelData structure.
- Version
2.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiPolyBrepModelEdit(const A3DRiPolyBrepModelData *pData, A3DRiPolyBrepModel *pRIPolyBrepModel)
Modifies an A3DRiPolyBrepModel from an A3DRiPolyBrepModelData structure.
- Version
10.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_INVALID_ENTITY_NULL –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code
-
A3DStatus A3DRiPolyWireGet(const A3DRiPolyWire *pRIPolyWire, A3DRiPolyWireData *pData)
Populates the A3DRiPolyWireData 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 A3DRiPolyWireCreate(const A3DRiPolyWireData *pData, A3DRiPolyWire **ppRIPolyWire)
Creates an A3DRiPolyWire from an A3DRiPolyWireData structure.
- Version
2.0
- Return values
A3D_INVALID_DATA_STRUCT_SIZE –
A3D_INVALID_DATA_STRUCT_NULL –
A3D_SET_INCONSISTENT_EMPTY –
A3D_SUCCESS –
- Returns
A3D_SUCCESS in case of success or an error code