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 a 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 Feb 2 17:23:48 2009 for Stellarium by  1.5.5