Area calculation by spherical excess / Huiller's formula.
More...
List of all members.
Detailed Description
template<typename PointOfSegment, typename CalculationType = void>
class boost::geometry::strategy::area::huiller< PointOfSegment, CalculationType >
Area calculation by spherical excess / Huiller's formula.
- Template Parameters:
-
PointOfSegment | point type of segments of rings/polygons |
CalculationType | numeric type for calculation (e.g. high precision); if [*void] then it is extracted automatically from the coordinate type and (if necessary) promoted to floating point |
- Author:
- Barend Gehrels. Adapted from:
- Note:
- The version in Graphics Gems IV (page 132-137) didn't account for polygons crossing the 0 and 180 meridians. The fix for this algorithm can be found in Graphics Gems V (pages 45-46). See:
-
This version works for convex and non-convex polygons, for 180 meridian crossing polygons and for polygons with holes. However, some cases (especially 180 meridian cases) must still be checked.
-
The version which sums angles, which is often seen, doesn't handle non-convex polygons correctly.
-
The version which sums longitudes, see http://hdl.handle.net/2014/40409, is simple and works well in most cases but not in 180 meridian crossing cases. This probably could be solved.
-
This version is made for spherical equatorial coordinate systems
Member Typedef Documentation
template<typename PointOfSegment , typename CalculationType = void>
template<typename PointOfSegment , typename CalculationType = void>
template<typename PointOfSegment , typename CalculationType = void>
Constructor & Destructor Documentation
template<typename PointOfSegment , typename CalculationType = void>
Member Function Documentation
template<typename PointOfSegment , typename CalculationType = void>
template<typename PointOfSegment , typename CalculationType = void>