]>
Dogcows Code - chaz/yoink/blob - src/moof/shape.hh
2 /*] Copyright (c) 2009-2011, Charles McGarvey [*****************************
3 **] All rights reserved.
5 * Distributable under the terms and conditions of the 2-clause BSD license;
6 * see the file COPYING for a complete text of the license.
8 *****************************************************************************/
10 #ifndef _MOOF_SHAPE_HH_
11 #define _MOOF_SHAPE_HH_
13 #include <moof/drawable.hh>
14 #include <moof/math.hh>
15 #include <moof/opengl.hh>
16 #include <moof/ray.hh>
21 * Declares an interface for shapes.
25 // plane (can construct from triangle2)
32 // | sphere2, circle sphere<2>
33 // | sphere3 sphere<3>
35 // | aabb2, rectangle aabb<2>
38 // | triangle2 polygon<2,3>
39 // | triangle3 polygon<3,3>
53 * Checks if this shape is intersected by a given ray. If so, returns
54 * the distance from the start of the ray to the shape and information
55 * about the contact via the 2nd parameter. A negative value is
56 * returned if there is no contact.
58 virtual bool intersect_ray(const ray
<D
>& ray
,
59 typename
moof::ray
<D
>::contact
& hit
) const
65 typedef shape
<2> shape2
;
66 typedef shape
<3> shape3
;
71 #endif // _MOOF_SHAPE_HH_
This page took 0.039036 seconds and 4 git commands to generate.