-
new Polygon(coordinates, layout, ends)
geom/Polygon.js, line 27 -
Name Type Description coordinates!Array<Array<Coordinate>> | !Array.<number> Array of linear rings that define the polygon. The first linear ring of the array defines the outer-boundary or surface of the polygon. Each subsequent linear ring defines a hole in the surface of the polygon. A linear ring is an array of vertices' coordinates where the first coordinate and the last are equivalent. (For internal use, flat coordinates in combination with
layoutandendsare also accepted.)layoutGeometryLayout | undefined Layout.
endsArray.<number> | undefined Ends (for internal use with flat coordinates).
Fires:
-
change(BaseEvent) - Generic change event. Triggered when the revision counter is increased. -
error(BaseEvent) - Generic error event. Triggered when an error occurs. -
propertychange(ObjectEvent) - Triggered when a property is changed.
-
Extends
- SimpleGeometry
Methods
-
appendLinearRing(linearRing)
geom/Polygon.js, line 105 -
Append the passed linear ring to this polygon.
Name Type Description linearRingLinearRing Linear ring.
-
applyTransform(transformFn) inherited
geom/SimpleGeometry.js, line 208 -
Apply a transform function to the coordinates of the geometry. The geometry is modified in place. If you do not want the geometry modified in place, first
clone()it and then use this function on the clone.Name Type Description transformFnTransformFunction Transform function. Called with a flat array of geometry coordinates.
-
changed() inherited
Observable.js, line 72 -
Increases the revision counter and dispatches a 'change' event.
-
clone(){Polygon}
geom/Polygon.js, line 121 -
Make a complete copy of the geometry.
Returns:
Clone.
-
dispatchEvent(event){boolean | undefined} inherited
events/Target.js, line 85 -
Dispatches an event and calls all listeners listening for events of this type. The event parameter can either be a string or an Object with a
typeproperty.Name Type Description eventBaseEvent | string Event object.
Returns:
falseif anyone called preventDefault on the event object or if any of the listeners returned false.
-
get(key){*} inherited
Object.js, line 136 -
Gets a value.
Name Type Description keystring Key name.
Returns:
Value.
-
getArea(){number}
geom/Polygon.js, line 191 -
Return the area of the polygon on projected plane.
Returns:
Area (on projected plane).
-
getClosestPoint(point, closestPoint){Coordinate} inherited
geom/Geometry.js, line 154 -
Return the closest point of the geometry to the passed point as
coordinate.Name Type Description pointCoordinate Point.
closestPointCoordinate | undefined Closest point.
Returns:
Closest point.
-
getCoordinates(right){Array<Array<Coordinate>>}
geom/Polygon.js, line 214 -
Get the coordinate array for this geometry. This array has the structure of a GeoJSON coordinate array for polygons.
Name Type Description rightboolean | undefined Orient coordinates according to the right-hand rule (counter-clockwise for exterior and clockwise for interior rings). If
false, coordinates will be oriented according to the left-hand rule (clockwise for exterior and counter-clockwise for interior rings). By default, coordinate orientation will depend on how the geometry was constructed.Returns:
Coordinates.
-
getExtent(extent){Extent} inherited
geom/Geometry.js, line 187 -
Get the extent of the geometry.
Name Type Description extentExtent | undefined Extent.
Returns:
extent Extent.
-
getFirstCoordinate(){Coordinate} inherited
geom/SimpleGeometry.js, line 69 -
Return the first coordinate of the geometry.
Returns:
First coordinate.
-
getInteriorPoint(){Point}
geom/Polygon.js, line 260 -
Return an interior point of the polygon.
Returns:
Interior point as XYM coordinate, where M is the length of the horizontal intersection that the point belongs to.
-
getKeys(){Array.<string>} inherited
Object.js, line 149 -
Get a list of object property names.
Returns:
List of property names.
-
getLastCoordinate(){Coordinate} inherited
geom/SimpleGeometry.js, line 85 -
Return the last coordinate of the geometry.
Returns:
Last point.
-
getLayout(){GeometryLayout} inherited
geom/SimpleGeometry.js, line 96 -
Return the
layoutof the geometry.Returns:
Layout.
-
getLinearRing(index){LinearRing | null}
geom/Polygon.js, line 285 -
Return the Nth linear ring of the polygon geometry. Return
nullif the given index is out of range. The exterior linear ring is available at index0and the interior rings at index1and beyond.Name Type Description indexnumber Index.
Returns:
Linear ring.
-
getLinearRingCount(){number}
geom/Polygon.js, line 271 -
Return the number of rings of the polygon, this includes the exterior ring and any interior rings.
Returns:
Number of rings.
-
getLinearRings(){Array<LinearRing>}
geom/Polygon.js, line 303 -
Return the linear rings of the polygon.
Returns:
Linear rings.
-
getProperties(){NoInfer.<Properties>} inherited
Object.js, line 158 -
Get an object of all property names and values.
Returns:
Object.
-
getRevision(){number} inherited
Observable.js, line 83 -
Get the version number for this object. Each time the object is modified, its version number will be incremented.
Returns:
Revision.
-
getType(){Type}
geom/Polygon.js, line 373 -
Get the type of this geometry.
Returns:
Geometry type.
-
intersectsCoordinate(coordinate){boolean} inherited
geom/Geometry.js, line 167 -
Returns true if this geometry includes the specified coordinate. If the coordinate is on the boundary of the geometry, returns false.
Name Type Description coordinateCoordinate Coordinate.
Returns:
Contains coordinate.
-
intersectsExtent(extent){boolean}
geom/Polygon.js, line 384 -
Test if the geometry and the passed extent intersect.
Name Type Description extentExtent Extent.
Returns:
trueif the geometry and the extent intersect.
-
on(type, listener){EventsKey | Array<EventsKey>} inherited
Observable.js, line 156 -
Listen for a certain type of event.
Name Type Description typestring | Array.<string> The event type or array of event types.
listenerfunction The listener function.
Returns:
Unique key for the listener. If called with an array of event types as the first argument, the return will be an array of keys.
-
once(type, listener){EventsKey | Array<EventsKey>} inherited
Observable.js, line 168 -
Listen once for a certain type of event.
Name Type Description typestring | Array.<string> The event type or array of event types.
listenerfunction The listener function.
Returns:
Unique key for the listener. If called with an array of event types as the first argument, the return will be an array of keys.
-
rotate(angle, anchor) inherited
geom/SimpleGeometry.js, line 228 -
Rotate the geometry around a given coordinate. This modifies the geometry coordinates in place.
Name Type Description anglenumber Rotation angle in counter-clockwise radians.
anchorCoordinate The rotation center.
-
scale(sx, sy, anchor) inherited
geom/SimpleGeometry.js, line 255 -
Scale the geometry (with an optional origin). This modifies the geometry coordinates in place.
Name Type Description sxnumber The scaling factor in the x-direction.
synumber | undefined The scaling factor in the y-direction (defaults to sx).
anchorCoordinate | undefined The scale origin (defaults to the center of the geometry extent).
-
set(key, value, silent) inherited
Object.js, line 218 -
Sets a value.
Name Type Description keystring Key name.
value* Value.
silentboolean | undefined Update without triggering an event.
-
setCoordinates(coordinates, layout)
geom/Polygon.js, line 401 -
Set the coordinates of the polygon.
Name Type Description coordinatesArray<Array<Coordinate>> Coordinates.
layoutGeometryLayout | undefined Layout.
-
setProperties(values, silent) inherited
Object.js, line 241 -
Sets a collection of key-value pairs. Note that this changes any existing properties and adds new ones (it does not remove any existing properties).
Name Type Description valuesPartial.<NoInfer.<Properties>> Values.
silentboolean | undefined Update without triggering an event.
-
simplify(tolerance){Geometry} inherited
geom/Geometry.js, line 233 -
Create a simplified version of this geometry. For linestrings, this uses the Douglas Peucker algorithm. For polygons, a quantization-based simplification is used to preserve topology.
Name Type Description tolerancenumber The tolerance distance for simplification.
Returns:
A new, simplified version of the original geometry.
-
transform(source, destination){this} inherited
geom/Geometry.js, line 308 -
Transform each coordinate of the geometry from one coordinate reference system to another. The geometry is modified in place. For example, a line will be transformed to a line and a circle to a circle. If you do not want the geometry modified in place, first
clone()it and then use this function on the clone.Name Type Description sourceProjectionLike The current projection. Can be a string identifier or a
Projectionobject.destinationProjectionLike The desired projection. Can be a string identifier or a
Projectionobject.Returns:
This geometry. Note that original geometry is modified in place.
-
translate(deltaX, deltaY) inherited
geom/SimpleGeometry.js, line 287 -
Translate the geometry. This modifies the geometry coordinates in place. If instead you want a new geometry, first
clone()this geometry.Name Type Description deltaXnumber Delta X.
deltaYnumber Delta Y.
-
un(type, listener) inherited
Observable.js, line 177 -
Unlisten for a certain type of event.
Name Type Description typestring | Array.<string> The event type or array of event types.
listenerfunction The listener function.
-
unset(key, silent) inherited
Object.js, line 265 -
Unsets a property.
Name Type Description keystring Key name.
silentboolean | undefined Unset without triggering an event.