#include <GiIntersectionsCalculator.h>
|
virtual bool | notifyObjectPlacedAtNode (OdGiTriangleForIntersectTest *pTriang, int objectType, OdGiExtents3dSpaceNode_Gi *pNode) |
|
void | computeIntersections (OdInt64 containerID, const OdGeExtents3d &extents) |
|
void | processPathCalculation (OdUInt64 idObjTested) |
|
void | removeEdgeInfo (OdInt64 objID) |
|
OdList< OdGiExtents3dSpaceChainPolyline * > & | finalIntersectionPathes () |
|
OdArray< OdGiExtents3dSpacePoint * > * | intersectionVertices () |
|
OdArray< OdGiEdgeForIntersectTest * > * | intersectionEdges () |
|
bool | collideTriangles (OdUInt64 idObjA, OdUInt64 trIdA, OdUInt64 idObjB, OdUInt64 trIdB, OdUInt64 idObjTested, const OdGeTol &tol) |
|
OdUInt32 | checkPointsPlacement (const OdGeVector3d *pPlaneNormalA, double D_A, const OdGePoint3d *pPointsTriangleB, const OdGeTol &tol) |
|
virtual bool | notifyObjectPlacedAtNode (OdGiTriangleForIntersectTest *pTriang, int objectType, OdGiExtents3dSpaceNode_Gi *pNode) |
|
void | intersectTriangles (OdUInt64 idObjA, OdUInt64 trIdA, OdUInt64 idObjB, OdUInt64 trIdB, OdUInt64 idObjTested, const OdGeTol &tol) |
|
◆ CollisionOption
Enumerator |
---|
kOption_IntersectionOnly | |
kOption_Clearance | |
kOption_CalcDistance | |
kOption_CheckAll | |
Definition at line 356 of file GiIntersectionsCalculator.h.
◆ OdGiCollisionDetector()
OdGiCollisionDetector::OdGiCollisionDetector |
( |
| ) |
|
◆ ~OdGiCollisionDetector()
virtual OdGiCollisionDetector::~OdGiCollisionDetector |
( |
| ) |
|
|
inlinevirtual |
◆ checkPointsPlacement()
◆ clearContainersToBeTested()
void OdGiCollisionDetector::clearContainersToBeTested |
( |
| ) |
|
◆ collideTriangles()
◆ computeIntersections()
◆ detectCollisions()
◆ finalIntersectionPathes()
◆ finalizeCalculations()
virtual void OdGiCollisionDetector::finalizeCalculations |
( |
| ) |
|
|
virtual |
◆ getCalcDistance()
bool OdGiCollisionDetector::getCalcDistance |
( |
| ) |
const |
|
inline |
Checks whether collision detection calculates collision distance.
- Returns
- true if collision detection calculates collision distance, false otherwise.
Definition at line 320 of file GiIntersectionsCalculator.h.
◆ getCheckAll()
bool OdGiCollisionDetector::getCheckAll |
( |
| ) |
const |
|
inline |
Checks whether collision detection checks all faces instead of detecting the first collision.
- Returns
- true if collision detection checks all faces, false otherwise.
Definition at line 333 of file GiIntersectionsCalculator.h.
◆ getClearance()
double OdGiCollisionDetector::getClearance |
( |
| ) |
const |
|
inline |
Retrieves a distance for the clearance mode when objects that are "too close" are detected as intersections.
Definition at line 307 of file GiIntersectionsCalculator.h.
◆ getCollisionDistance()
bool OdGiCollisionDetector::getCollisionDistance |
( |
OdInt64 |
collisionIndex, |
|
|
double & |
result |
|
) |
| const |
Retrieves a collision distance at the specified index.
- Parameters
-
collisionIndex | [in] Index of a collision for which to get the distance. |
result | [out] Receives collision distance. |
- Returns
- true if collision distance is sucessfully received. This method returns false if index exceeds the size of vector with collisions or if collision at the specified index is not detected.
◆ getCollisions()
◆ intersectionEdges()
◆ intersectionVertices()
◆ isClearance()
bool OdGiCollisionDetector::isClearance |
( |
| ) |
const |
|
inline |
Checks whether clearance mode for detecting collisions is enabled. This method detects collisions between intersectiong, touching and objects that are "too close".
- Returns
- true if clearance mode is enabled, false otherwise.
Definition at line 302 of file GiIntersectionsCalculator.h.
◆ isIntersectionsOnly()
bool OdGiCollisionDetector::isIntersectionsOnly |
( |
| ) |
const |
|
inline |
Checks whether only intersected objects are detected as collisions.
- Returns
- true if only intersected objects are detected as collisions, false otherwise.
Definition at line 285 of file GiIntersectionsCalculator.h.
◆ notifyObjectPlacedAtNode()
◆ processPathCalculation()
void OdGiCollisionDetector::processPathCalculation |
( |
OdUInt64 |
idObjTested | ) |
|
|
inlineprotected |
◆ removeEdgeInfo()
void OdGiCollisionDetector::removeEdgeInfo |
( |
OdInt64 |
objID | ) |
|
|
inlineprotected |
◆ setCalcDistance()
void OdGiCollisionDetector::setCalcDistance |
( |
bool |
b | ) |
|
|
inline |
Specifies whether collision detection should calculate collision distance.
- Parameters
-
b | [in] The flag that indicates that collision detection should calculate collision distance. |
Definition at line 313 of file GiIntersectionsCalculator.h.
◆ setCheckAll()
void OdGiCollisionDetector::setCheckAll |
( |
bool |
b | ) |
|
|
inline |
Specifies whether collision detection should check all faces instead of detecting the first collision.
- Parameters
-
b | [in] If true, collision detection checks all faces instead of detecting the first collision. |
Definition at line 326 of file GiIntersectionsCalculator.h.
◆ setClearance()
void OdGiCollisionDetector::setClearance |
( |
double |
cl | ) |
|
|
inline |
Specifies a distance for the clearance mode when objects that are "too close" are detected as intersections.
- Parameters
-
cl | [in] Clearance distance. Object which have less distance than this value are considered collided in the clearance mode. |
Definition at line 291 of file GiIntersectionsCalculator.h.
◆ setIntersectionsOnly()
void OdGiCollisionDetector::setIntersectionsOnly |
( |
bool |
b | ) |
|
|
inline |
Specifies whether to detect collisions only when collided objects intersect.
- Parameters
-
b | [in] Flag that specifies whether to detect only intersecting objects. If true, touches are not detected. |
Definition at line 278 of file GiIntersectionsCalculator.h.
◆ m_dClearance
double OdGiCollisionDetector::m_dClearance |
|
protected |
◆ m_options
OdUInt8 OdGiCollisionDetector::m_options |
|
protected |
◆ m_ptA
◆ m_ptB
◆ m_vectCollidedContainers
◆ m_vectCollidedContainersAsPtr
The documentation for this class was generated from the following file: