A renderable object which is a collection of renderable objects. More...
#include <groupobject.h>
Inherits rtl_object.
Inherited by rtl_polyhedron and rtl_soft.
This class provides the ability to group a large number of closely spaced objects within a local bounding space. This can provide for efficient intersection calculation with a group of primitives like polygons.
The add functions may be called only up until the first intersection calculation. After the first call to lclintersect the object is considered to be completely defined and objects and materials are ignored after this time.
Constructs an empty mass of objects.
Constructs a mass of objects which references (through pointers) the group of objects in the given group.
Add a renderable primitive to the group of objects.
Returns the ith material, or the material for this object if i is not -1. Note that this implies no other range checking.
Returns the sub-object that was struck during the last intersection calculation.
Reimplemented from rtl_subobject.
[protected] [protected]Computes the local space intersection with the primitives in this object.
Reimplemented from rtl_object.
Reimplemented in rtl_soft.
[protected]Returns the normal at the point last intersected.
Reimplemented from rtl_object.
Reimplemented in rtl_soft.
[protected]Table (or linked list) of materials for the primitives in this group.
Reimplemented from rtl_object.
[protected]The number of materials in the table.
[protected]Local space subdivision for the acceleration of the local space intersection calculation.
[protected]
[static, protected]Is this group object referencing another.