Collision computation

Fields

A3DCollision_Unknown
A3DCollision_NoCollision
A3DCollision_Clearance
A3DCollision_Contact
A3DCollision_Collision
A3DCollision_FirstInside
A3DCollision_SecondInside

Detailed Description

group a3d_collision

Determine if there are interferences between parts from an assembly.

This functionality allows to determine if there are interferences (clashes) between parts from an assembly, and if a specified clearance distance is verified between parts (clearance analysis).

Depending on the nature of the analysis, one or two groups can be defined:

  • One group: the analysis is processed on all the selected parts that are included in the group.
  • Two groups: the analysis is processed between the two groups, but not inside the groups.

Type Documentation

enum A3DCollisionType

Collision type between to A3DRiRepresentationItem.

Version
11.1

Values:

enumerator A3DCollision_Unknown

Cannot compute the result.

enumerator A3DCollision_NoCollision

There is no colision or contact between the two A3DRiRepresentationItem.

enumerator A3DCollision_Clearance

The safety distance is not verified between the two A3DRiRepresentationItem.

enumerator A3DCollision_Contact

There is a contact between the two A3DRiRepresentationItem.

enumerator A3DCollision_Collision

There is a collision between the two A3DRiRepresentationItem.

enumerator A3DCollision_FirstInside

The first A3DRiRepresentationItem is inside of the second A3DRiRepresentationItem.

enumerator A3DCollision_SecondInside

The second A3DRiRepresentationItem is inside of the first A3DRiRepresentationItem.

Function Documentation

A3DStatus A3DCollisionCompute(A3DCollisionGroupData const *pGroup1, A3DCollisionGroupData const *pGroup2, A3DCollisionParameterData const *pParameterData, A3DUns32 *uCollisionResultsSize, A3DCollisionResultData **pCollisionResults)

Determine interferences between A3DRiRepresentationItem.

This function allows to determine if there are interferences between A3DRiRepresentationItem from one or two groups.

Version
11.1

Call A3DCollisionCompute( NULL, NULL, NULL, uCollisionResultsSize, pCollisionResults) to release pCollisionResults structure

if pParameterData->m_dContactLimit is set to 0., the function return only A3DCollision_Collision instead of A3DCollision_Contact, A3DCollision_FirstInside and A3DCollision_SecondInside.

Parameters:
Returns:

A3D_SUCCESS on success, or an error code on failure

Return values:
  • A3D_INVALID_DATA_STRUCT_SIZE
  • A3D_INVALID_DATA_STRUCT_NULL
  • A3D_INVALID_DATA
  • A3D_SUCCESS
  • A3D_ERROR