Open Dynamics Engine
Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
dxSAPSpace Struct Reference
Inheritance diagram for dxSAPSpace:
dxSpace dxGeom dBase

Classes

struct  Pair
 A generic couple structure. More...
 

Public Member Functions

 dxSAPSpace (dSpaceID _space, int sortaxis)
 
virtual dxGeomgetGeom (int i)
 
virtual void add (dxGeom *g)
 
virtual void remove (dxGeom *g)
 
virtual void dirty (dxGeom *g)
 
virtual void computeAABB ()
 
virtual void cleanGeoms ()
 
virtual void collide (void *data, dNearCallback *callback)
 
virtual void collide2 (void *data, dxGeom *geom, dNearCallback *callback)
 
- Public Member Functions inherited from dxSpace
 dxSpace (dSpaceID _space)
 
void setCleanup (int mode)
 
int getCleanup () const
 
void setSublevel (int value)
 
int getSublevel () const
 
void setManulCleanup (int value)
 
int getManualCleanup () const
 
int query (dxGeom *geom) const
 
int getNumGeoms () const
 
- Public Member Functions inherited from dxGeom
 dxGeom (dSpaceID _space, int is_placeable)
 
void updateZeroSizedFlag (bool is_zero_sized)
 
unsigned getParentSpaceTLSKind () const
 
void computePosr ()
 
void recomputePosr ()
 
bool checkControlValueSizeValidity (void *dataValue, int *dataSize, int iRequiresSize)
 
virtual bool controlGeometry (int controlClass, int controlCode, void *dataValue, int *dataSize)
 
virtual int AABBTest (dxGeom *o, dReal aabb[6])
 
void recomputeAABB ()
 
void spaceAdd (dxGeom **first_ptr)
 
void spaceRemove ()
 
void bodyAdd (dxBody *b)
 
void bodyRemove ()
 
- Public Member Functions inherited from dBase
void * operator new (size_t size)
 
void * operator new (size_t, void *p)
 
void operator delete (void *ptr, size_t size)
 
void * operator new[] (size_t size)
 
void operator delete[] (void *ptr, size_t size)
 

Private Member Functions

void BoxPruning (int count, const dxGeom **geoms, dArray< Pair > &pairs)
 

Private Attributes

dArray< dxGeom * > DirtyList
 
dArray< dxGeom * > GeomList
 
dArray< dxGeom * > TmpGeomList
 
dArray< dxGeom * > TmpInfGeomList
 
uint32 ax0idx
 
uint32 ax1idx
 
uint32 ax2idx
 
dArray< float > poslist
 
RaixSortContext sortContext
 

Additional Inherited Members

- Public Attributes inherited from dxSpace
int count
 
dxGeomfirst
 
int cleanup
 
int sublevel
 
unsigned tls_kind
 
int current_index
 
dxGeomcurrent_geom
 
int lock_count
 
- Public Attributes inherited from dxGeom
int type
 
int gflags
 
void * data
 
dBodyID body
 
dxGeombody_next
 
dxPosRfinal_posr
 
dxPosRoffset_posr
 
dxGeomnext
 
dxGeom ** tome
 
dxGeomnext_ex
 
dxGeom ** tome_ex
 
dxSpaceparent_space
 
dReal aabb [6]
 
unsigned long category_bits
 
unsigned long collide_bits
 

Member Function Documentation

void dxSAPSpace::BoxPruning ( int  count,
const dxGeom **  geoms,
dArray< Pair > &  pairs 
)
private

Complete box pruning. Returns a list of overlapping pairs of boxes, each box of the pair belongs to the same set.

Parameters
count[in] number of boxes.
geoms[in] geoms of boxes.
pairs[out] array of overlapping pairs.

References dxSAPSpace::Pair::id0, and dxSAPSpace::Pair::id1.


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