#include <Primitive.h>
Definition at line 8 of file Primitive.h.
Public Member Functions | |
Primitive () | |
virtual | ~Primitive () |
virtual bool | Intersect (Ray &ray)=0 |
virtual bool | Occluded (Ray &ray) |
virtual Vector3D | GetNormal (Ray &ray)=0 |
virtual PAIR | GetUV (Ray &ray) |
Shader * | getShader () |
void | setShader (Shader *sh) |
const Box & | GetBounds () |
Get bounds of this box. | |
bool & | castShadows () |
get direct access to the cast shadow variable | |
Protected Member Functions | |
virtual Box | CalcBounds ()=0 |
Protected Attributes | |
Box | bounds |
bool | bDirtyBounds |
Shader * | shader |
bool | bCastShadows |
Primitive::Primitive | ( | ) | [inline] |
virtual Primitive::~Primitive | ( | ) | [inline, virtual] |
Definition at line 26 of file Primitive.h.
virtual Box Primitive::CalcBounds | ( | ) | [protected, pure virtual] |
virtual bool Primitive::Intersect | ( | Ray & | ray | ) | [pure virtual] |
virtual bool Primitive::Occluded | ( | Ray & | ray | ) | [inline, virtual] |
Implemented in AABB, InfinitePlane, SmoothTriangle, Sphere, and Triangle.
Referenced by UniAxialCrystalShader::Shade(), TransparentShader::Shade(), SteelShader::Shade(), SilverShader::Shade(), PlasmaShader::Shade(), PhongShader::Shade(), MirrorShader::Shade(), GoldShader::Shade(), EyeLightShader::Shade(), DebugShader::Shade(), CopperShader::Shade(), BumpMappedWoodPhongShader::Shade(), BumpMappedPhongShader::Shade(), BumpMappedMarblePhongShader::Shade(), and BumpMappedDebugShader::Shade().
virtual PAIR Primitive::GetUV | ( | Ray & | ray | ) | [inline, virtual] |
Reimplemented in TexturedSmoothTriangle.
Definition at line 31 of file Primitive.h.
References PAIR.
Referenced by PlasmaShader::Shade(), PhongShader::Shade(), MapShader::Shade(), FlatTransparentShader::Shade(), FlatShader::Shade(), CloudShader::Shade(), CenterMapShader::Shade(), BumpMappedWoodPhongShader::Shade(), BumpMappedPhongShader::Shade(), BumpMappedMarblePhongShader::Shade(), and BumpMappedDebugShader::Shade().
Shader* Primitive::getShader | ( | ) | [inline] |
void Primitive::setShader | ( | Shader * | sh | ) | [inline] |
const Box& Primitive::GetBounds | ( | ) | [inline] |
Get bounds of this box.
Definition at line 37 of file Primitive.h.
References bDirtyBounds, bounds, and CalcBounds().
bool& Primitive::castShadows | ( | ) | [inline] |
get direct access to the cast shadow variable
Definition at line 48 of file Primitive.h.
References bCastShadows.
Referenced by PhongShader::Shade(), BumpMappedWoodPhongShader::Shade(), BumpMappedPhongShader::Shade(), and BumpMappedMarblePhongShader::Shade().
Box Primitive::bounds [protected] |
bool Primitive::bDirtyBounds [protected] |
Shader* Primitive::shader [protected] |
bool Primitive::bCastShadows [protected] |