CFx SDK Documentation 2024 SP0
|
#include <GiCollideProc.h>
Public Types | |
enum | AnalyticPrimitives { kAnalyticNone = 0 , kAnaliticCircles = (1 << 0) , kAnalyticComplexCurves = ( 1 << 1 ) } |
enum | ProcessingPhase { kPhaseGatherInputData = 0 , kPhaseDetectIntersections } |
Public Member Functions | |
ODRX_DECLARE_MEMBERS (OdGiCollideProc) | |
virtual void | set (OdGsCollisionDetectionReactor *pReactor, const OdGsCollisionDetectionContext *pCtx=NULL)=0 |
virtual void | setDeviation (const OdGeDoubleArray &deviations)=0 |
virtual void | setDeviation (const OdGiDeviation *pDeviation)=0 |
virtual void | setDrawContext (OdGiConveyorContext *pDrawCtx)=0 |
virtual void | setLinePrimitivesChecking (bool bCheck)=0 |
virtual bool | linePrimitivesChecking () const =0 |
virtual void | enableAnalyticMode (OdUInt8 options)=0 |
virtual OdUInt8 | analitycMode () const =0 |
virtual void | setNoFilter (bool bNoFilter)=0 |
virtual bool | noFilter () const =0 |
virtual void | setProcessingPhase (ProcessingPhase)=0 |
virtual ProcessingPhase | processingPhase () const =0 |
virtual const OdGeExtents3d & | extents () const =0 |
virtual void | setInputDrawables (OdGiPathNode const *const *pInputList, OdUInt32 nInputListSize)=0 |
virtual void | setCheckWithDrawables (OdGiPathNode const *const *pInputList, OdUInt32 nInputListSize)=0 |
virtual void | processTriangles ()=0 |
virtual void | setExtentsExtension (double e)=0 |
Public Member Functions inherited from OdGiConveyorNode | |
ODRX_DECLARE_MEMBERS (OdGiConveyorNode) | |
virtual OdGiConveyorInput & | input ()=0 |
virtual OdGiConveyorOutput & | output ()=0 |
Public Member Functions inherited from OdRxObject | |
ODRX_HEAP_OPERATORS () | |
OdRxObject () | |
virtual | ~OdRxObject () |
virtual OdRxObject * | queryX (const OdRxClass *pClass) const |
virtual OdRxObject * | x (const OdRxClass *pClass) const |
virtual OdRxClass * | isA () const |
virtual void | addRef ()=0 |
virtual void | release ()=0 |
virtual long | numRefs () const |
bool | isKindOf (const OdRxClass *pClass) const |
virtual OdRxObjectPtr | clone () const |
virtual void | copyFrom (const OdRxObject *pSource) |
virtual OdRx::Ordering | comparedTo (const OdRxObject *pOther) const |
virtual bool | isEqualTo (const OdRxObject *pOther) const |
Additional Inherited Members | |
Static Public Member Functions inherited from OdRxObject | |
static OdRxObjectPtr | cast (const OdRxObject *pointer) |
static OdRxClass * | desc () |
Protected Member Functions inherited from OdGiConveyorNode | |
OdGiConveyorNode () | |
<group OdGi_Classes> This class implements conveyor nodes performing collision detection.
Definition at line 48 of file GiCollideProc.h.
Additional analytic checking for primitives.
Enumerator | |
---|---|
kAnalyticNone | |
kAnaliticCircles | |
kAnalyticComplexCurves |
Definition at line 100 of file GiCollideProc.h.
Represents processing phase of collision detection.
Enumerator | |
---|---|
kPhaseGatherInputData | |
kPhaseDetectIntersections |
Definition at line 125 of file GiCollideProc.h.
|
pure virtual |
Retrieves options that are used in the analytic mode.
Enables analytic mode for specified primitives. Must be implemented in derived classes.
options | [in] Option for analytic mode. |
|
pure virtual |
Retrieves the extents of triangles that were collected during the OdGiCollideProc::kPhaseGatherInputData processing phase.
|
pure virtual |
Checks whether line primitives should be checked. If line primitives checking is disabled, only triangles will be checked.
|
pure virtual |
Checks whether entity filtering is disabled.
OdGiCollideProc::ODRX_DECLARE_MEMBERS | ( | OdGiCollideProc | ) |
|
pure virtual |
Retrieves the current processing phase.
|
pure virtual |
Performs processing triangles that were gathered during conveyor node processing phases.
|
pure virtual |
Associates this object with the collision detection reactor and collision detection context.
pReactor | [in] Pointer to a custom object that detects collisions. |
pCtx | [in] Pointer to the collision detection context. |
|
pure virtual |
Specifies an additional list of OdGiPathNode that is used in entity filtering during the OdGiCollideProc::kPhaseDetectIntersections processing phase;
pInputList | [in] Pointer to a pointer to an input list of drawables. |
nInputListSize | [in] Number of drawables in a list. |
|
pure virtual |
Sets max deviation for curve tessellation.
deviations | [in] Array with deviation values. |
|
pure virtual |
Sets deviation object to obtain max deviation for curve tessellation.
pDeviation | [in] Pointer to the deviation object. |
|
pure virtual |
Sets the draw context object (to access to traits, etc).
pDrawCtx | [in] Pointer to the draw context. |
|
pure virtual |
Specifies extents extension.
e | [in] Extents extension. |
|
pure virtual |
Specifies a list of OdGiPathNode items that are used in entity filtering.
pInputList | [in] Pointer to a pointer to an input list of drawables. |
nInputListSize | [in] Number of drawables in a list. |
|
pure virtual |
Specifies whether line primitives should be checked. If line primitives checking is disabled, only triangles will be checked.
bCheck | [in] Flag that specifies whether line primitives should be checked. |
|
pure virtual |
Disables entity filtering during.
bNoFilter | [in] Flag that specifies whether |
|
pure virtual |
Specifies the current processing phase that allows conveyor node collecting of triangles to different lists.
ProcessingPhase | [in] Processing phase. |