#include <primitive.h>
Public Member Functions | |
bool | CanIntersect () const |
void | Refine (vector< Reference< Primitive > > &refined) const |
virtual BBox | WorldBound () const |
virtual bool | Intersect (const Ray &r, Intersection *isect) const |
virtual bool | IntersectP (const Ray &r) const |
GeometricPrimitive (const Reference< Shape > &s, const Reference< Material > &m, AreaLight *a) | |
const AreaLight * | GetAreaLight () const |
BSDF * | GetBSDF (const DifferentialGeometry &dg, const Transform &WorldToObject) const |
Private Attributes | |
Reference< Shape > | shape |
Reference< Material > | material |
AreaLight * | areaLight |
Definition at line 57 of file primitive.h.
bool GeometricPrimitive::CanIntersect | ( | ) | const [virtual] |
Reimplemented from Primitive.
Definition at line 97 of file primitive.cpp.
References areaLight, GeometricPrimitive(), material, and shape.
BBox GeometricPrimitive::WorldBound | ( | ) | const [virtual] |
bool GeometricPrimitive::Intersect | ( | const Ray & | r, | |
Intersection * | isect | |||
) | const [virtual] |
Implements Primitive.
Definition at line 113 of file primitive.cpp.
References Intersection::dg, Ray::maxt, Intersection::primitive, shape, and Intersection::WorldToObject.
bool GeometricPrimitive::IntersectP | ( | const Ray & | r | ) | const [virtual] |
const AreaLight * GeometricPrimitive::GetAreaLight | ( | ) | const [virtual] |
BSDF * GeometricPrimitive::GetBSDF | ( | const DifferentialGeometry & | dg, | |
const Transform & | WorldToObject | |||
) | const [virtual] |
Implements Primitive.
Definition at line 127 of file primitive.cpp.
References Transform::GetInverse(), material, and shape.
Reference<Shape> GeometricPrimitive::shape [private] |
Definition at line 74 of file primitive.h.
Referenced by CanIntersect(), GetBSDF(), Intersect(), IntersectP(), Refine(), and WorldBound().
Reference<Material> GeometricPrimitive::material [private] |
AreaLight* GeometricPrimitive::areaLight [private] |