--- a/src/scene.h Thu Nov 22 17:53:34 2007 +0100
+++ b/src/scene.h Thu Nov 22 18:10:10 2007 +0100
@@ -94,7 +94,7 @@
// normal at point P
virtual Vector3 normal(Vector3 &P) = 0;
- virtual BBox get_bbox();
+ virtual BBox get_bbox() = 0;
};
class Sphere: public Shape
@@ -111,6 +111,7 @@
bool intersect(const Ray &ray, float &dist);
bool intersect_all(const Ray &ray, float dist, vector<float> &allts);
Vector3 normal(Vector3 &P) { return (P - center) * inv_radius; };
+ BBox get_bbox();
};
class Plane: public Shape
@@ -126,6 +127,7 @@
bool intersect(const Ray &ray, float &dist);
bool intersect_all(const Ray &ray, float dist, vector<float> &allts) {return false;};
Vector3 normal(Vector3 &) { return N; };
+ BBox get_bbox();
};
class Triangle: public Shape