geos::algorithm::CentroidArea Class Reference

Computes the centroid of an area geometry. More...

#include <geos/geosAlgorithm.h>

List of all members.

Public Member Functions

void add (const geom::Geometry *geom)
void add (const geom::CoordinateSequence *ring)
geom::CoordinategetCentroid () const
bool getCentroid (geom::Coordinate &ret) const
 Return false if a centroid couldn't be computed.


Detailed Description

Computes the centroid of an area geometry.

Algorithm:

Based on the usual algorithm for calculating the centroid as a weighted sum of the centroids of a decomposition of the area into (possibly overlapping) triangles. The algorithm has been extended to handle holes and multi-polygons. See http://www.faqs.org/faqs/graphics/algorithms-faq/ for further details of the basic approach.


Member Function Documentation

void geos::algorithm::CentroidArea::add ( const geom::Geometry geom  ) 

Adds the area defined by a Geometry to the centroid total. If the geometry has no area it does not contribute to the centroid.

Parameters:
geom the geometry to add

void geos::algorithm::CentroidArea::add ( const geom::CoordinateSequence ring  ) 

Adds the area defined by an array of coordinates. The array must be a ring; i.e. end with the same coordinate as it starts with.

Parameters:
ring an array of Coordinates


The documentation for this class was generated from the following file:
Generated on Fri Mar 27 04:53:10 2009 for GEOS by  doxygen 1.5.4