lux::Quad Class Reference

#include <quad.h>

Inheritance diagram for lux::Quad:
[legend]
Collaboration diagram for lux::Quad:
[legend]

List of all members.

Public Member Functions

 Quad (const Transform &o2w, bool ro, int nq, int nv, const int *vi, const Point *P)
virtual ~Quad ()
virtual BBox ObjectBound () const
virtual BBox WorldBound () const
virtual bool Intersect (const Ray &ray, float *tHit, DifferentialGeometry *dg) const
virtual bool IntersectP (const Ray &ray) const
virtual float Area () const
virtual Point Sample (float u1, float u2, float u3, Normal *Ns) const

Static Public Member Functions

static ShapeCreateShape (const Transform &o2w, bool reverseOrientation, const ParamSet &params)

Private Attributes

QuadMeshmesh
Quadrilateralquad

Detailed Description

Definition at line 31 of file quad.h.


Constructor & Destructor Documentation

Quad::Quad ( const Transform o2w,
bool  ro,
int  nq,
int  nv,
const int vi,
const Point P 
)

Definition at line 31 of file quad.cpp.

References lux::QuadMesh::idx, mesh, and quad.

Referenced by CreateShape().

Quad::~Quad (  )  [virtual]

Definition at line 39 of file quad.cpp.

References mesh, and quad.


Member Function Documentation

float Quad::Area (  )  const [virtual]

Returns the area of this primitive.

Reimplemented from lux::Primitive.

Definition at line 63 of file quad.cpp.

References lux::Quadrilateral::Area(), and quad.

Shape * Quad::CreateShape ( const Transform o2w,
bool  reverseOrientation,
const ParamSet params 
) [static]
bool Quad::Intersect ( const Ray ray,
float *  tHit,
DifferentialGeometry dg 
) const [virtual]

Reimplemented from lux::Shape.

Definition at line 52 of file quad.cpp.

References lux::Quadrilateral::Intersect(), and quad.

bool Quad::IntersectP ( const Ray r  )  const [virtual]

Tests for intersection of this primitive with the given ray.

Parameters:
r The ray to intersect with this primitive.
Returns:
Whether an intersection was found.

Reimplemented from lux::Primitive.

Definition at line 58 of file quad.cpp.

References lux::Quadrilateral::IntersectP(), and quad.

BBox Quad::ObjectBound (  )  const [virtual]

Reimplemented from lux::Shape.

Definition at line 44 of file quad.cpp.

References lux::Quadrilateral::ObjectBound(), and quad.

virtual Point lux::Quad::Sample ( float  u1,
float  u2,
float  u3,
Normal Ns 
) const [inline, virtual]

Reimplemented from lux::Shape.

Definition at line 43 of file quad.h.

References quad, and lux::Quadrilateral::Sample().

BBox Quad::WorldBound (  )  const [virtual]

Returns the world bounds of this primitive.

Reimplemented from lux::Shape.

Definition at line 48 of file quad.cpp.

References quad, and lux::Quadrilateral::WorldBound().


Member Data Documentation

Definition at line 50 of file quad.h.

Referenced by Quad(), and ~Quad().

Definition at line 51 of file quad.h.

Referenced by Area(), Intersect(), IntersectP(), ObjectBound(), Quad(), Sample(), WorldBound(), and ~Quad().


The documentation for this class was generated from the following files:
Generated by  doxygen 1.6.2-20100208