Home · All Namespaces · All Classes · Functions · Coding Style · Plugins · File Structure

StelGeom Namespace Reference

In this namespace we define different geometrical shapes. More...


Classes

class  HalfSpace
 A HalfSpace is defined by a direction and an aperture. More...
class  Polygon
 A polygon is defined by a set of connected points. More...
class  ConvexS
 A Convex is defined by several HalfSpaces defining a convex region. More...
class  ConvexPolygon
 A special case of ConvexS for which all HalfSpace have an aperture of PI/2. More...
class  Disk
 A Disk is defined by a single HalfSpace. More...
class  Difference

Functions

template<class T>
bool intersect (const Vec3d &v, const T &o)
template<class T>
bool intersect (const T &o, const Vec3d &v)
template<class T>
bool intersect (const Polygon &p, const T &o)
bool intersect (const ConvexPolygon &cp1, const ConvexPolygon &cp2)
bool intersect (const ConvexS &cp1, const ConvexPolygon &cp2)
template<class S1, class S2, class S>
bool intersect (const Difference< S1, S2 > &d, const S &s)
template<class S1, class S2>
bool intersect (const Difference< S1, S2 > &d, const Vec3d &v)
template<class S1, class S2, class S>
bool contains (const Difference< S1, S2 > &d, const S &s)
bool contains (const HalfSpace &h, const Vec3d &v)
bool contains (const HalfSpace &h, const Polygon &poly)
bool contains (const ConvexPolygon &c, const Vec3d &v)
bool contains (const ConvexPolygon &cp1, const ConvexPolygon &cp2)
bool intersect (const HalfSpace &h, const ConvexPolygon &cp)
bool intersect (const ConvexPolygon &c, const HalfSpace &h)
bool planeIntersect2 (const HalfSpace &h1, const HalfSpace &h2, Vec3d &p1, Vec3d &p2)


Detailed Description

In this namespace we define different geometrical shapes.

We also define two functions, contains(x, y) and intersect(x, y) = intersect(y, x) which is defined for most of the pair of geometrical shapes.


Function Documentation

bool StelGeom::intersect ( const HalfSpace &  h,
const ConvexPolygon &  cp 
) [inline]

We rewrite the intersect for Disk/ConvexPolygon This method checks that the minimum distance between the Disk center and each side of the ConvexPolygon is smaller than the disk radius.

bool StelGeom::intersect ( const ConvexS &  cp1,
const ConvexPolygon &  cp2 
) [inline]

We rewrite the intersect for ConvexPolygon.

bool StelGeom::intersect ( const ConvexPolygon &  cp1,
const ConvexPolygon &  cp2 
) [inline]

We rewrite the intersect for ConvexPolygon.

bool StelGeom::planeIntersect2 ( const HalfSpace &  h1,
const HalfSpace &  h2,
Vec3d p1,
Vec3d p2 
)

Compute the intersection of 2 halfspaces on the sphere (usually on 2 points) and return it in p1 and p2.

If the 2 HalfSpace don't interesect or intersect only at 1 point, false is returned and p1 and p2 are undefined


Generated on Mon Mar 9 16:16:17 2009 for Stellarium by  doxygen 1.5.5