JTS Topology Suite version 1.12

com.vividsolutions.jts.algorithm
Class CentroidArea

java.lang.Object
  extended by com.vividsolutions.jts.algorithm.CentroidArea

public class CentroidArea
extends java.lang.Object

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. The code has also be extended to handle degenerate (zero-area) polygons. In this case, the centroid of the line segments in the polygon will be returned.

Version:
1.7

Constructor Summary
CentroidArea()
           
 
Method Summary
 void add(Coordinate[] ring)
          Adds the area defined by an array of coordinates.
 void add(Geometry geom)
          Adds the area defined by a Geometry to the centroid total.
 Coordinate getCentroid()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CentroidArea

public CentroidArea()
Method Detail

add

public void add(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

add

public void add(Coordinate[] 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

getCentroid

public Coordinate getCentroid()

JTS Topology Suite version 1.12