JTS Topology Suite version 1.13

## com.vividsolutions.jts.geom
Class MultiPolygon

    java.lang.Object
      com.vividsolutions.jts.geom.Geometry
          com.vividsolutions.jts.geom.GeometryCollection
              com.vividsolutions.jts.geom.MultiPolygon

All Implemented Interfaces:
  Polygonal, java.io.Serializable, java.lang.Cloneable, java.lang.Comparable

    public class MultiPolygon

extends GeometryCollection
implements Polygonal

Models a collection of `Polygon`s.

As per the OGC SFS specification, the Polygons in a MultiPolygon may not overlap, and may only touch at single points. This allows the topological point-set semantics to be well-defined.

Version:
  1.7
See Also:
  Serialized Form

Field Summary

Fields inherited from class com.vividsolutions.jts.geom.GeometryCollection
`geometries`

Fields inherited from class com.vividsolutions.jts.geom.Geometry
`envelope, factory, SRID`

Constructor Summary
`MultiPolygon(Polygon[] polygons, GeometryFactory factory)`
`MultiPolygon(Polygon[] polygons, PrecisionModel precisionModel, int SRID)` Deprecated. Use GeometryFactory instead

Method Summary
`boolean` `equalsExact(Geometry other, double tolerance)` Returns true if the two `Geometry`s are exactly equal, up to a specified distance tolerance.
`Geometry` `getBoundary()` Computes the boundary of this geometry
`int` `getBoundaryDimension()` Returns the dimension of this `Geometry`s inherent boundary.
`int` `getDimension()` Returns the dimension of this geometry.
`java.lang.String` `getGeometryType()` Returns the name of this Geometry's actual class.
`Geometry` `reverse()` Creates a `MultiPolygon` with every component reversed.

Methods inherited from class com.vividsolutions.jts.geom.GeometryCollection
`apply, apply, apply, apply, clone, compareToSameClass, compareToSameClass, computeEnvelopeInternal, getArea, getCoordinate, getCoordinates, getGeometryN, getLength, getNumGeometries, getNumPoints, isEmpty, normalize`

Methods inherited from class com.vividsolutions.jts.geom.Geometry

`buffer, buffer, buffer, checkNotGeometryCollection, compare, compareTo, compareTo, contains, convexHull, coveredBy, covers, crosses, difference, disjoint, distance, equal, equals, equals, equalsExact, equalsNorm, equalsTopo, geometryChanged, geometryChangedAction, getCentroid, getEnvelope, getEnvelopeInternal, getFactory, getInteriorPoint, getPrecisionModel, getSRID, getUserData, hashCode, hasNonEmptyElements, hasNullElements, intersection, intersects, isEquivalentClass, isGeometryCollection, isRectangle, isSimple, isValid, isWithinDistance, norm, overlaps, relate, relate, setSRID, setUserData, symDifference, toString, toText, touches, union, union, within`

Methods inherited from class java.lang.Object
`finalize, getClass, notify, notifyAll, wait, wait, wait`

Constructor Detail

### MultiPolygon

    public MultiPolygon(Polygon[] polygons,
                        PrecisionModel precisionModel,
                        int SRID)

  Deprecated. Use GeometryFactory instead

  Constructs a `MultiPolygon`.

  Parameters:
    `polygons` - the `Polygon`s for this `MultiPolygon` , or `null` or an empty array to create the empty geometry. Elements may be empty `Polygon`s, but not `null` s. The polygons must conform to the assertions specified in the OpenGIS Simple Features Specification for SQL .
    `precisionModel` - the specification of the grid of allowable points for this `MultiPolygon`
    `SRID` - the ID of the Spatial Reference System used by this `MultiPolygon`

### MultiPolygon

    public MultiPolygon(Polygon[] polygons,
                        GeometryFactory factory)

Parameters:
  `polygons` - the `Polygon`s for this `MultiPolygon`, or `null` or an empty array to create the empty geometry. Elements may be empty `Polygon`s, but not `null`s. The polygons must conform to the assertions specified in the OpenGIS Simple Features Specification for SQL.

Method Detail

### getDimension

    public int getDimension()

  Description copied from class: `Geometry`
  Returns the dimension of this geometry. The dimension of a geometry is is the topological dimension of its embedding in the 2-D Euclidean plane. In the JTS spatial model, dimension values are in the set {0,1,2}.

  Note that this is a different concept to the dimension of the vertex `Coordinate`s. The geometry dimension can never be greater than the coordinate dimension. For example, a 0-dimensional geometry (e.g. a Point) may have a coordinate dimension of 3 (X,Y,Z).

  Overrides:
    `getDimension` in class `GeometryCollection`
  Returns:
    the topological dimension of this geometry.

### getBoundaryDimension

    public int getBoundaryDimension()

  Description copied from class: `Geometry`
  Returns the dimension of this `Geometry`s inherent boundary.

  Overrides:
    `getBoundaryDimension` in class `GeometryCollection`
  Returns:
    the dimension of the boundary of the class implementing this interface, whether or not this object is the empty geometry. Returns `Dimension.FALSE` if the boundary is the empty geometry.

### getGeometryType

    public java.lang.String getGeometryType()

  Description copied from class: `Geometry`
  Returns the name of this Geometry's actual class.

  Overrides:
    `getGeometryType` in class `GeometryCollection`
  Returns:
    the name of this `Geometry`s actual class

### getBoundary

    public Geometry getBoundary()

  Computes the boundary of this geometry

  Overrides:
    `getBoundary` in class `GeometryCollection`
  Returns:
    a lineal geometry (which may be empty)
  See Also:
    `Geometry.getBoundary()`

### equalsExact

    public boolean equalsExact(Geometry other,
                               double tolerance)

  Description copied from class: `Geometry`
  Returns true if the two `Geometry`s are exactly equal, up to a specified distance tolerance. Two Geometries are exactly equal within a distance tolerance if and only if:
  - they have the same structure
  - they have the same values for their vertices, within the given tolerance distance, in exactly the same order.
  This method does not test the values of the `GeometryFactory`, the `SRID`, or the `userData` fields.

  To properly test equality between different geometries, it is usually necessary to `Geometry.normalize()` them first.

  Overrides:
    `equalsExact` in class `GeometryCollection`
  Parameters:
    `other` - the `Geometry` with which to compare this `Geometry`
    `tolerance` - distance at or below which two `Coordinate`s are considered equal
  Returns:
    `true` if this and the other `Geometry` have identical structure and point values, up to the distance tolerance.
  See Also:
    `Geometry.equalsExact(Geometry)`, `Geometry.normalize()`, `Geometry.norm()`

### reverse

    public Geometry reverse()

  Creates a `MultiPolygon` with every component reversed. The order of the components in the collection are not reversed.

  Overrides:
    `reverse` in class `GeometryCollection`
  Returns:
    a MultiPolygon in the reverse order

JTS Topology Suite version 1.13