29#ifndef _CONTAINER_3D_H_
30#define _CONTAINER_3D_H_
32#include "../shapes3D/object_3d.h"
66 virtual bool IntersectP(
const RAY& aRay,
float aMaxDistance )
const = 0;
78 bool IntersectP(
const RAY& aRay,
float aMaxDistance )
const override;
virtual bool Intersect(const RAY &aRay, HITINFO &aHitInfo) const =0
void ConvertTo(CONST_VECTOR_OBJECT &aOutVector) const
const BBOX_3D & GetBBox() const
virtual bool IntersectP(const RAY &aRay, float aMaxDistance) const =0
void Add(OBJECT_3D *aObject)
const LIST_OBJECT & GetList() const
virtual ~CONTAINER_3D_BASE()
bool Intersect(const RAY &aRay, HITINFO &aHitInfo) const override
bool IntersectP(const RAY &aRay, float aMaxDistance) const override
const BBOX_3D & GetBBox() const
std::vector< OBJECT_3D * > VECTOR_OBJECT
std::list< OBJECT_3D * > LIST_OBJECT
std::vector< const OBJECT_3D * > CONST_VECTOR_OBJECT
Manage a bounding box defined by two SFVEC3F min max points.
void Union(const SFVEC3F &aPoint)
Recalculate the bounding box adding a point.
Stores the hit information of a ray with a point on the surface of a object.