Tools and common structures. More...

Modules

 Transformations Module
 Creates and accesses transformation entities that can be applied to PRC entities containing geometry.
 
 Entity Reference
 Creates and accesses references to other PRC entities.
 
 UTF-8 Conversion Utilities
 Functions for converting between UTF-8 and UTF-16 strings on Windows.
 
 Debug Utilities
 Functions to aid debugging.
 

Data Structures

struct  A3DMiscMaterialAnisotropicData
 Anisotropic physical properties. More...
 
struct  A3DMiscMaterialFiberData
 Fiber physical properties. More...
 
struct  A3DMiscMaterialHoneyCombData
 HoneyComb physical properties. More...
 
struct  A3DMiscMaterialIsotropicData
 Isotropic physical properties. More...
 
struct  A3DMiscMaterialOrthotropic2DData
 Orthotropic2D physical properties. More...
 
struct  A3DMiscMaterialOrthotropic3DData
 Orthotropic3D physical properties. More...
 
struct  A3DMiscMaterialPropertiesData
 Material properties, like density. More...
 
struct  A3DMiscPhysicMaterialData
 Physical properties. contains a union of the differents . More...
 

Enumerations

enum  A3DMaterialPhysicType {
  A3DPhysicType_None,
  A3DPhysicType_Fiber,
  A3DPhysicType_HoneyComb,
  A3DPhysicType_Isotropic,
  A3DPhysicType_Orthotropic2D,
  A3DPhysicType_Orthotropic3D,
  A3DPhysicType_Anisotropic
}
 Material physical type properties. More...
 

Functions

A3DStatus A3DMiscComputeBoundingBox (const A3DEntity *pEntity, A3DDouble const *pOptPlacement, A3DBoundingBoxData *pAABB)
 Use the tessellation to compute the axis-aligned bounding box (AABB) of the given entity. More...
 
A3DStatus A3DMiscGetBoundingBox (const A3DEntity *pEntity, A3DBoundingBoxData *pAABB)
 Read the axis-aligned bounding box (AABB) of the given A3DEntity directly from the CAD data. More...
 
A3DStatus A3DMiscGetMaterialProperties (const A3DEntity *pEntity, A3DMiscMaterialPropertiesData *pMaterialPropertiesData)
 Get density in kg/m3 read from the file. Equal to -1.0 if not set \ Can call it on product occurrences, part, and representation item. More...
 

Detailed Description

Tools and common structures.

This module describes tools and common structures.

Enumeration Type Documentation

◆ A3DMaterialPhysicType

Material physical type properties.

Version
9.0
Enumerator
A3DPhysicType_None 

If no material type set

A3DPhysicType_Fiber 

Fiber Type

A3DPhysicType_HoneyComb 

Honey Comb Type

A3DPhysicType_Isotropic 

Isotropic Type

A3DPhysicType_Orthotropic2D 

Orthotropic Type

A3DPhysicType_Orthotropic3D 

Orthotropic 3D Type

A3DPhysicType_Anisotropic 

Anisotropic Type

Function Documentation

◆ A3DMiscGetMaterialProperties()

A3DStatus A3DMiscGetMaterialProperties ( const A3DEntity pEntity,
A3DMiscMaterialPropertiesData pMaterialPropertiesData 
)

Get density in kg/m3 read from the file. Equal to -1.0 if not set \ Can call it on product occurrences, part, and representation item.

Version
8.2

◆ A3DMiscGetBoundingBox()

A3DStatus A3DMiscGetBoundingBox ( const A3DEntity pEntity,
A3DBoundingBoxData pAABB 
)

Read the axis-aligned bounding box (AABB) of the given A3DEntity directly from the CAD data.

Version
8.2
Parameters
[in]pEntityThe Entity to get the bounding box from. It can be any of A3DAsmModelFile, A3DAsmProductOccurrence, A3DAsmPartDefinition or A3DRiSet.
[out]pAABBA pointer to a valid A3DBoundingBoxData which will be filled in with the found bounding box. If no AABB is found in the CAD data, A3DBoundingBoxData::m_sMin and A3DBoundingBoxData::m_sMax will be set to zero vectors ({0.0, 0.0, 0.0}).
Returns
A3D_SUCCESS in case of success or an error code
Return values
A3D_SUCCESS
A3D_BASE_BAD_ENTITY_TYPE
A3D_INITIALIZE_BAD_VALUES
Warning
This function does not compute any bounding box. To do so please check A3DMiscComputeBoundingBox.

◆ A3DMiscComputeBoundingBox()

A3DStatus A3DMiscComputeBoundingBox ( const A3DEntity pEntity,
A3DDouble const *  pOptPlacement,
A3DBoundingBoxData pAABB 
)

Use the tessellation to compute the axis-aligned bounding box (AABB) of the given entity.

Version
11.1
Parameters
[in]pEntityThe Entity to get the bounding box from. It can be any of A3DAsmProductOccurrence, A3DAsmPartDefinition or A3DRiSet.
[in]pOptPlacementReserved for future use. Must be set to 0.
[out]pAABBA pointer to a valid A3DBoundingBoxData which will be filled in with the computed bounding box. If not possible an invalid bounding box is filled in (see below).
Returns
A3D_SUCCESS in case of success or an error code
Return values
A3D_INVALID_DATA_STRUCT_SIZE
A3D_INVALID_DATA_STRUCT_NULL
A3D_BASE_BAD_ENTITY_TYPE
A3D_SUCCESSThe bouding box computation is done on visible entities only. The unit used is the same as the given entity.

An invalid bouding box corresponds to those values:

It can occur under following conditions:

  • The computation is done on infinite elements.
  • The CAD data do not contain any tessellation.
  • pEntity is of type A3DRiPlane.
Warning
This function computes the bounding box using tessellation data. If you want to read the actual bounding box from CAD data, see A3DMiscGetBoundingBox.