ObjectSet
[Parametrable Object]

The basis class for objectset models. More...

Classes

class  ObjectSet
 the basis class for object set methods. More...
class  ObjectSet
 the basis class for object set methods. More...

Functions

virtual ObjectSetObjectSet::duplicate ()=0
void ObjectSet::set_grcinterface (GraphicsCacheInterface *grcinterface)
bool ObjectSet::is_ok ()
uint32 ObjectSet::memory ()
virtual void ObjectSet::clear ()=0
virtual void ObjectSet::bbox_set (bbox &bb)=0
virtual void ObjectSet::add (uint32 obj, bbox &bb)=0
virtual void ObjectSet::realize ()=0
virtual uint32 ObjectSet::intersect (ray &r, float &distance, packed &data)=0

Variables

bool ObjectSet::_ok
uint32 ObjectSet::_memory_used
GraphicsCacheInterfaceObjectSet::_grcinterface

Detailed Description

The basis class for objectset models.

ObjectSet are used to organize object in a faster manner than testing all objects one after an other. Regular grid, n-trees are some examples of such data structures.


Function Documentation

virtual void ObjectSet::add ( uint32  obj,
bbox &  bb 
) [pure virtual, inherited]

Adds a new object ID with its bbox.

Parameters:
obj the object ID,
bb the bbox.

virtual void ObjectSet::bbox_set ( bbox &  bb  )  [pure virtual, inherited]

Sets The global bounding box of the ObjectSet.

Parameters:
bb the global bbox.

virtual void ObjectSet::clear (  )  [pure virtual, inherited]

Clears the internal datas and is call after each frame computation.

virtual ObjectSet* ObjectSet::duplicate (  )  [pure virtual, inherited]

Duplicates the object to free parametrized constructor.

virtual uint32 ObjectSet::intersect ( ray &  r,
float &  distance,
packed &  data 
) [pure virtual, inherited]

Searchs for an intersection with the whole scene but just to have the nearest object, not the full computed intersection.

Parameters:
r the ray to test,
i the resulting distance (if found),
data the private datas to pass to Geometry::compute_intersection.
Returns:
the object ID found (0 if nothing's found).


Generated on Tue Nov 14 15:40:08 2006 for libcrbn by  doxygen 1.5.0