#include <primitive.h>
Public Member Functions | |
| bool | CanIntersect () const |
| void | Refine (vector< 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 boost::shared_ptr< Shape > &s, const boost::shared_ptr< Material > &m, AreaLight *a) | |
| const AreaLight * | GetAreaLight () const |
| BSDF * | GetBSDF (const DifferentialGeometry &dg, const Transform &WorldToObject, float u) const |
Private Attributes | |
| boost::shared_ptr< Shape > | shape |
| boost::shared_ptr< Material > | material |
| AreaLight * | areaLight |
Definition at line 65 of file primitive.h.
| GeometricPrimitive::GeometricPrimitive | ( | const boost::shared_ptr< Shape > & | s, | |
| const boost::shared_ptr< Material > & | m, | |||
| AreaLight * | a | |||
| ) |
Definition at line 139 of file primitive.cpp.
Referenced by Refine().
| bool GeometricPrimitive::CanIntersect | ( | ) | const [virtual] |
| const AreaLight * GeometricPrimitive::GetAreaLight | ( | ) | const [virtual] |
| BSDF * GeometricPrimitive::GetBSDF | ( | const DifferentialGeometry & | dg, | |
| const Transform & | WorldToObject, | |||
| float | u | |||
| ) | const [virtual] |
Implements lux::Primitive.
Definition at line 157 of file primitive.cpp.
References lux::Transform::GetInverse(), material, and shape.
| bool GeometricPrimitive::Intersect | ( | const Ray & | r, | |
| Intersection * | isect | |||
| ) | const [virtual] |
Implements lux::Primitive.
Definition at line 143 of file primitive.cpp.
References lux::Intersection::dg, lux::Ray::maxt, lux::Intersection::primitive, shape, and lux::Intersection::WorldToObject.
| bool GeometricPrimitive::IntersectP | ( | const Ray & | r | ) | const [virtual] |
| void GeometricPrimitive::Refine | ( | vector< Primitive * > & | refined | ) | const |
Definition at line 125 of file primitive.cpp.
References areaLight, GeometricPrimitive(), material, and shape.
| BBox GeometricPrimitive::WorldBound | ( | ) | const [virtual] |
AreaLight* lux::GeometricPrimitive::areaLight [private] |
Definition at line 84 of file primitive.h.
Referenced by GetAreaLight(), and Refine().
boost::shared_ptr<Material> lux::GeometricPrimitive::material [private] |
Definition at line 83 of file primitive.h.
boost::shared_ptr<Shape> lux::GeometricPrimitive::shape [private] |
Definition at line 82 of file primitive.h.
Referenced by CanIntersect(), GetBSDF(), Intersect(), IntersectP(), Refine(), and WorldBound().
1.6.1