Representation Item Base

Types

A3DRiRepresentationItemData

Functions

A3DStatus

A3DRiRepresentationItemGet

A3DStatus

A3DRiRepresentationItemSet

A3DStatus

A3DRiRepresentationItemDeepCopy

A3DStatus

A3DRiRepresentationItemComputeTessellation

A3DStatus

A3DRiReleaseTessellation

A3DStatus

A3DRiRepresentationItemEditCoordinateSystem

A3DStatus

A3DRiRepresentationItemSupportGet

Detailed Description

group a3d_ricontent

Function Documentation

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 on success, or an error code on failure

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 on success, or an error code on failure

A3DStatus A3DRiRepresentationItemDeepCopy(const A3DRiRepresentationItem *pRi, A3DRiRepresentationItem **ppNewRi)

Create a new representation item by making a deep copy.

../_images/ri_deep_copy.jpg

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 on success, or an error code on failure

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 on success, or an error code on failure

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 on success, or an error code on failure

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 on success, or an error code on failure

A3DStatus A3DRiRepresentationItemSupportGet(const A3DRiRepresentationItem *pRi, A3DUns32 *puiLinkedItemsSize, A3DMiscMarkupLinkedItem ***pppLinkedItems)

Get the geometrical entities used to build the A3DRiRepresentationItem This function allocates and returns an array of A3DMiscMarkupLinkedItem.

To free the allocated array, the function must be called again with pRi as NULL.

Version

24.5

Parameters:
  • pRi[in] The A3DRiRepresentationItem to query. If NULL, pppLinkedItems is freed instead of being allocated.

  • puiLinkedItemsSize[out] The number of entities used to build pRi. puiLinkedItemsSize must be different to NULL

  • pppLinkedItems[out] The array of entities used to build pRi. pppLinkedItems must be different to NULL

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 on success, or an error code on failure