#include <primitive.h>
Public Member Functions | |
virtual | ~Primitive () |
virtual BBox | WorldBound () const =0 |
virtual bool | CanIntersect () const |
virtual bool | Intersect (const Ray &r, Intersection *in) const =0 |
virtual bool | IntersectP (const Ray &r) const =0 |
virtual void | Refine (vector< Reference< Primitive > > &refined) const |
void | FullyRefine (vector< Reference< Primitive > > &refined) const |
virtual const AreaLight * | GetAreaLight () const =0 |
virtual BSDF * | GetBSDF (const DifferentialGeometry &dg, const Transform &WorldToObject) const =0 |
Definition at line 31 of file primitive.h.
Primitive::~Primitive | ( | ) | [virtual] |
Definition at line 28 of file primitive.cpp.
virtual BBox Primitive::WorldBound | ( | ) | const [pure virtual] |
Implemented in GridAccel, KdTreeAccel, GeometricPrimitive, and InstancePrimitive.
Referenced by Scene::Scene().
bool Primitive::CanIntersect | ( | ) | const [virtual] |
Reimplemented in GridAccel, KdTreeAccel, and GeometricPrimitive.
Definition at line 30 of file primitive.cpp.
virtual bool Primitive::Intersect | ( | const Ray & | r, | |
Intersection * | in | |||
) | const [pure virtual] |
Implemented in GridAccel, KdTreeAccel, GeometricPrimitive, and InstancePrimitive.
virtual bool Primitive::IntersectP | ( | const Ray & | r | ) | const [pure virtual] |
Implemented in GridAccel, KdTreeAccel, GeometricPrimitive, and InstancePrimitive.
Reimplemented in GeometricPrimitive.
Definition at line 35 of file primitive.cpp.
References Severe().
Definition at line 40 of file primitive.cpp.
Referenced by GridAccel::GridAccel(), and KdTreeAccel::KdTreeAccel().
virtual const AreaLight* Primitive::GetAreaLight | ( | ) | const [pure virtual] |
Implemented in GeometricPrimitive, InstancePrimitive, and Aggregate.
Referenced by EstimateDirect(), and Intersection::Le().
virtual BSDF* Primitive::GetBSDF | ( | const DifferentialGeometry & | dg, | |
const Transform & | WorldToObject | |||
) | const [pure virtual] |
Implemented in GeometricPrimitive, InstancePrimitive, and Aggregate.
Referenced by Intersection::GetBSDF().