X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fyoink;a=blobdiff_plain;f=src%2FMoof%2FShape.hh;h=d21e84d464d8f3c4cca0788d76e2c167b8a11ced;hp=c97296004b7a80aa73d5ff3594ed4ae658b38c40;hb=2f239b9ba2a556a5ca810cfffc60552a56a4fe86;hpb=837bae9f2bf7b25e1d3d2625eeaf39c1d2f48827 diff --git a/src/Moof/Shape.hh b/src/Moof/Shape.hh index c972960..d21e84d 100644 --- a/src/Moof/Shape.hh +++ b/src/Moof/Shape.hh @@ -19,20 +19,21 @@ // Frustum -// Plane (can construct from Triangle<3>) +// Plane (can construct from Triangle3) // Ray // Shape<> // +- Line<> -// +- Ball<> -// | Circle <- Ball<2> -// | Sphere <- Ball<3> -// +- Box<> -// | Rectangle <- Box<2> -// | Aabb <- Box<3> +// - Line2 Line<2> +// - Line3 Line<3> +// +- Sphere<> +// | Sphere2, Circle Sphere<2> +// | Sphere3 Sphere<3> +// +- Aabb<> +// | Aabb2, Rectangle Aabb<2> +// | Aabb3 Aabb<3> // +- Polygon<> -// | Triangle <- Polygon<3> -// +- Cylinder -// +- Cone +// | Triangle2 Polygon<2,3> +// | Triangle3 Polygon<3,3> namespace Mf { @@ -48,17 +49,21 @@ public: /** * Checks if this shape is intersected by a given ray. If so, returns * the distance from the start of the ray to the shape and information - * about the intersection via the 2nd parameter. A negative value is - * returned if there is no intersection. + * about the contact via the 2nd parameter. A negative value is + * returned if there is no contact. */ virtual bool intersectRay(const Ray& ray, - typename Ray::Intersection& hit) + typename Ray::Contact& hit) const { - return SCALAR(-1.0); + return false; } }; +typedef Shape<2> Shape2; +typedef Shape<3> Shape3; + + } // namespace Mf #endif // _MOOF_SHAPE_HH_