CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
OdGsCullingVolume Class Referenceabstract

#include <GsCullingVolume.h>

Inheritance diagram for OdGsCullingVolume:
OdRxObject OdGsFrustumCullingVolume OdGsOrthoCullingVolume

Public Types

enum  ProjectionType { kProjOrtho , kProjPerspective }
 
enum  IntersectionStatus { kIntersectNot , kIntersectOk , kIntersectIn }
 

Public Member Functions

 ODRX_DECLARE_MEMBERS (OdGsCullingVolume)
 
virtual ProjectionType projectionType () const =0
 
virtual bool intersectWithOpt (const OdGsCullingPrimitive &prim) const =0
 
virtual IntersectionStatus intersectWith (const OdGsCullingPrimitive &prim) const =0
 
virtual void transformBy (const OdGeMatrix3d &xfm)=0
 
- Public Member Functions inherited from OdRxObject
 ODRX_HEAP_OPERATORS ()
 
 OdRxObject ()
 
virtual ~OdRxObject ()
 
virtual OdRxObjectqueryX (const OdRxClass *pClass) const
 
virtual OdRxObjectx (const OdRxClass *pClass) const
 
virtual OdRxClassisA () 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 OdRxClassdesc ()
 

Detailed Description

Base class for orthogonal and perspective culling volumes.

Corresponding C++ library: TD_Gs

<group OdGs_Classes>

Definition at line 398 of file GsCullingVolume.h.

Member Enumeration Documentation

◆ IntersectionStatus

Represents the intersection status of the culling volume.

Enumerator
kIntersectNot 

No intersection detected.

kIntersectOk 

Intersects with projection boundary.

kIntersectIn 

Primitive completely inside projection boundary.

Definition at line 414 of file GsCullingVolume.h.

◆ ProjectionType

Represents the projection type of the culling volume.

Enumerator
kProjOrtho 

Orthogonal projection.

kProjPerspective 

Perspective projection.

Definition at line 404 of file GsCullingVolume.h.

Member Function Documentation

◆ intersectWith()

virtual IntersectionStatus OdGsCullingVolume::intersectWith ( const OdGsCullingPrimitive prim) const
pure virtual

Intersection test between culling volume and culling primitive (returns complete and incomplete intersection statuses).

Parameters
prim[in] Input primitive for culling detection.
Returns
one of the following intersection statuses:
Value Description kIntersectNot 0 No intersection detected. kIntersectOk 1 Intersects with culling volume boundary. kIntersectIn 2 Culling volume primitive is completely inside culling volume boundary.

◆ intersectWithOpt()

virtual bool OdGsCullingVolume::intersectWithOpt ( const OdGsCullingPrimitive prim) const
pure virtual

Optimized intersection test between culling volume and culling primitive.

Parameters
prim[in] Input primitive for culling detection.
Returns
true if the provided primitive intersects with this culling volume, false otherwise.

◆ ODRX_DECLARE_MEMBERS()

OdGsCullingVolume::ODRX_DECLARE_MEMBERS ( OdGsCullingVolume  )

◆ projectionType()

virtual ProjectionType OdGsCullingVolume::projectionType ( ) const
pure virtual

Returns type of projection for this culling volume object.

Remarks
Value Description kProjOrtho 0 Orthogonal projection. kProjPerspective 1 Perspective projection.

◆ transformBy()

virtual void OdGsCullingVolume::transformBy ( const OdGeMatrix3d xfm)
pure virtual

Transform culling volume by transformation matrix.

Parameters
xfm[in] Xform matrix.

The documentation for this class was generated from the following file: