## com.vividsolutions.jts.algorithm
Class CentroidArea

    java.lang.Object
      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 `Coordinate`s

### getCentroid

    public Coordinate getCentroid()