# OpenLayers.Geometry.Polygon

Polygon is a collection of Geometry.LinearRings.

#### Inherits from

- OpenLayers.Geometry.Collection
- OpenLayers.Geometry

Summary

OpenLayers.Geometry.Polygon | Polygon is a collection of Geometry.LinearRings.
Constructor |
OpenLayers.Geometry.Polygon | Constructor for a Polygon geometry.
Functions |
getArea | Calculated by subtracting the areas of the internal holes from the area of the outer hole.
getGeodesicArea | Calculate the approximate area of the polygon were it projected onto the earth.
intersects | Determine if the input geometry intersects this one.
distanceTo | Calculate the closest distance between two geometries (on the x-y plane).
createRegularPolygon | Create a regular polygon around a radius.

### Constructor

### OpenLayers.Geometry.Polygon

Constructor for a Polygon geometry. The first ring (this.component[0])is the outer bounds of the polygon and all subsequent rings (this.component[1-n]) are internal holes.

#### Parameters

components | {Array(OpenLayers.Geometry.LinearRing)}

### Functions

### getArea

> getArea: function()

Calculated by subtracting the areas of the internal holes from the area of the outer hole.

#### Returns

{float} The area of the geometry

### getGeodesicArea

> getGeodesicArea: function( | projection | )

Calculate the approximate area of the polygon were it projected onto the earth.

#### Parameters

projection | {OpenLayers.Projection} The spatial reference system for the geometry coordinates. If not provided, Geographic/WGS84 is assumed.

#### Reference

Robert. G. Chamberlain and William H. Duquette, “Some Algorithms for Polygons on a Sphere”, JPL Publication 07-03, Jet Propulsion Laboratory, Pasadena, CA, June 2007 http://trs-new.jpl.nasa.gov/dspace/handle/2014/40409

#### Returns

{float} The approximate geodesic area of the polygon in square meters.

### intersects

> intersects: function( | geometry | )

Determine if the input geometry intersects this one.

#### Parameters

geometry | {OpenLayers.Geometry} Any type of geometry.

#### Returns

{Boolean} The input geometry intersects this one.

### distanceTo

> distanceTo: function( | geometry,
> | options | )

Calculate the closest distance between two geometries (on the x-y plane).

#### Parameters

geometry | {OpenLayers.Geometry} The target geometry.
options | {Object} Optional properties for configuring the distance calculation.

#### Valid options

details | {Boolean} Return details from the distance calculation. Default is false.
edge | {Boolean} Calculate the distance from this geometry to the nearest edge of the target geometry. Default is true. If true, calling distanceTo from a geometry that is wholly contained within the target will result in a non-zero distance. If false, whenever geometries intersect, calling distanceTo will return 0. If false, details cannot be returned.

#### Returns

{Number | Object} The distance between this geometry and the target. If details is true, the return will be an object with distance, x0, y0, x1, and y1 properties. The x0 and y0 properties represent the coordinates of the closest point on this geometry. The x1 and y1 properties represent the coordinates of the closest point on the target geometry.

### createRegularPolygon

> OpenLayers.Geometry.Polygon.createRegularPolygon = function( | origin,
> | radius,
> | sides,
> | rotation | )

Create a regular polygon around a radius. Useful for creating circles and the like.

#### Parameters

origin | {OpenLayers.Geometry.Point} center of polygon.
radius | {Float} distance to vertex, in map units.
sides | {Integer} Number of sides. 20 approximates a circle.
rotation | {Float} original angle of rotation, in degrees.

> getArea: function()

Calculated by subtracting the areas of the internal holes from the area of the outer hole.

> getGeodesicArea: function( | projection | )

Calculate the approximate area of the polygon were it projected onto the earth.

> intersects: function( | geometry | )

Determine if the input geometry intersects this one.

> distanceTo: function( | geometry,
> | options | )

Calculate the closest distance between two geometries (on the x-y plane).

> OpenLayers.Geometry.Polygon.createRegularPolygon = function( | origin,
> | radius,
> | sides,
> | rotation | )

Create a regular polygon around a radius.
A Collection is exactly what it sounds like: A collection of different Geometries.
A Geometry is a description of a geographic object.
A Linear Ring is a special LineString which is closed.
Class for coordinate transforms between coordinate systems.
Point geometry class.
Close