#include <sphere.h>
Inheritance diagram for Sphere:
Public Member Functions | |
Sphere () | |
Sphere (Material mat, Point centre, float radius, bool transmitted=false, float refraction=0.0f) | |
Point & | centre () |
float & | radius () |
const float & | radius () const |
virtual Point | objectCentre (void) |
Vector | normal (Point p) |
bool | intersect (Ray ray, float &t, Colour &colour) |
bool | sample (Point &p, float &pdf, const Point &f, float s, float t) |
void | print (ostream &) |
void | read (istream &) |
virtual eObjectType | objectType (void) const |
Private Attributes | |
Point | Centre |
float | Radius |
bool | Transmitted |
float | Refraction |
Friends | |
ostream & | operator<< (ostream &, Sphere) |
istream & | operator>> (istream &, Sphere &) |
Sphere::Sphere | ( | ) | [inline] |
Sphere::Sphere | ( | Material | mat, | |
Point | centre, | |||
float | radius, | |||
bool | transmitted = false , |
|||
float | refraction = 0.0f | |||
) |
Point& Sphere::centre | ( | ) | [inline] |
float& Sphere::radius | ( | ) | [inline] |
const float& Sphere::radius | ( | ) | const [inline] |
Implements GObject.
void Sphere::print | ( | ostream & | ) | [virtual] |
Implements GObject.
void Sphere::read | ( | istream & | ) | [virtual] |
Implements GObject.
virtual eObjectType Sphere::objectType | ( | void | ) | const [inline, virtual] |
Implements GObject.
ostream& operator<< | ( | ostream & | s, | |
Sphere | sphere | |||
) | [friend] |
istream& operator>> | ( | istream & | s, | |
Sphere & | sphere | |||
) | [friend] |
Point Sphere::Centre [private] |
float Sphere::Radius [private] |
bool Sphere::Transmitted [private] |
float Sphere::Refraction [private] |