类:多边形

ol/geom/Polygon~


import Polygon from 'ol/geom/Polygon.js';

面 几何.

new Polygon(coordinates, layout, ends)

Name Type 描述
coordinates !Array<Array<Coordinate>> | !Array.<number>

用于定义多边形的线性环数组。数组中的第一个线性环定义了多边形的外边界或表面。每个后续的线性环在多边形表面上定义一个孔。线性环是顶点坐标的数组,其中首尾坐标相等。(对于内部使用,平面坐标与layoutends也被接受。)

layout GeometryLayout | undefined

布局。

ends Array.<number> | undefined

端点(仅用于平面坐标的内部操作)。

触发事件:

继承

方法

appendLinearRing(linearRing)

将传递的线性环附加到该多边形。

Name Type 描述
linearRing LinearRing

线性环。

applyTransform(transformFn) inherited

对几何体的坐标应用变换函数。几何体将被原地修改。若不想原地修改几何体,请先执行 clone() 操作,再在克隆后的几何体上使用此函数。

Name Type 描述
transformFn TransformFunction

变换函数。使用几何坐标的扁平数组调用。

递增修订计数器并触发“更改”事件。

创建几何的完整副本。

返回:
克隆。

dispatchEvent(event){boolean | undefined} inherited

分发事件并调用所有监听该类型事件的监听器。事件参数可以是字符串或具有 type 属性的对象。

Name Type 描述
event BaseEvent | string

事件对象。

返回:
false if anyone called preventDefault on the event object or if any of the listeners returned false.

获取一个值。

Name Type 描述
key string

键名。

返回:
值。

getArea(){number}

返回投影平面上的多边形面积。

返回:
投影平面上的面积

getClosestPoint(point, closestPoint){Coordinate} inherited

返回几何体上离传入点最近的点作为 coordinate

Name Type 描述
point Coordinate

点.

closestPoint Coordinate | undefined

最近点。

返回:
最近点。

getCoordinates(right){Array<Array<Coordinate>>}

获取此几何的坐标数组。该数组采用多边形 GeoJSON 坐标数组的结构。

Name Type 描述
right boolean | undefined

按照右手定则定向坐标(外环逆时针,内环顺时针)。如果false坐标将按照左手定则进行定向(外环为顺时针,内环为逆时针)。默认情况下,坐标定向取决于几何体的构造方式。

返回:
坐标。

获取几何的范围。

Name Type 描述
extent Extent | undefined

范围.

返回:
范围 范围.

返回几何对象的第一个坐标。

返回:
第一个坐标。

getInteriorPoint(){Point}

返回多边形的内点。

返回:
内部点表示为 XYM 坐标,其中 M 为该点所属水平线段的长度。

getKeys(){Array.<string>} inherited

获取对象属性名称列表。

返回:
属性名列表。

返回几何体的最后一个坐标。

返回:
最后一点。

返回几何体的 layout

返回:
布局。

getLinearRing(index){LinearRing | null}

返回多边形几何的第 N 个线性环。若给定索引超出范围,则返回 null。外部线性环位于索引 0,内部线性环位于索引 1 及更高索引。

Name Type 描述
index number

索引。

返回:
线性环。

getLinearRingCount(){number}

返回多边形的环数,包括外环和任何内环。

返回:
Number of rings.

getLinearRings(){Array<LinearRing>}

返回多边形的线性环。

返回:
线性环。

getProperties(){Object.<string, *>} inherited

获取所有属性名称和值的对象。

返回:
对象。

getRevision(){number} inherited

获取此对象的版本号。每当对象被修改时,其版本号将自动递增。

返回:
修订。

获取该几何体的类型。

返回:
几何 类型.

intersectsCoordinate(coordinate){boolean} inherited

如果此几何包含指定坐标,则返回 true;若坐标位于几何边界上,则返回 false。

Name Type 描述
coordinate Coordinate

坐标。

返回:
包含坐标。

intersectsExtent(extent){boolean}

检查几何与传入范围是否相交。

Name Type 描述
extent Extent

范围.

返回:
true:如果几何与范围相交。

on(type, listener){EventsKey | Array<EventsKey>} inherited

监听特定类型的事件。

Name Type 描述
type string | Array.<string>

事件类型或事件类型数组。

listener function

监听器函数。

返回:
监听器的唯一键。如果以事件类型数组作为第一个参数调用,则返回将是键的数组。

once(type, listener){EventsKey | Array<EventsKey>} inherited

一次性监听特定类型的事件。

Name Type 描述
type string | Array.<string>

事件类型或事件类型数组。

listener function

监听器函数。

返回:
监听器的唯一键。若以事件类型数组作为第一个参数调用,则返回键的数组。

rotate(angle, anchor) inherited

围绕给定坐标旋转几何图形。这将原地修改几何图形的坐标。

Name Type 描述
angle number

逆时针旋转角度(弧度)。

anchor Coordinate

旋转中心。

scale(sx, sy, anchor) inherited

缩放几何体(可选原点)。这将原地修改几何坐标。

Name Type 描述
sx number

x方向的缩放因子。

sy number | undefined

y方向缩放因子(默认值为sx)。

anchor Coordinate | undefined

缩放原点(默认为几何范围的中心)。

set(key, value, silent) inherited

设置值。

Name Type 描述
key string

键名

value *

值。

silent boolean | undefined

更新而不触发事件。

setCoordinates(coordinates, layout)

设置多边形的坐标。

Name Type 描述
coordinates Array<Array<Coordinate>>

坐标。

layout GeometryLayout | undefined

布局。

setProperties(values, silent) inherited

设置键值对集合。请注意,此操作将修改现有属性并添加新属性,但不会删除任何现有属性。

Name Type 描述
values Object.<string, *>

值。

silent boolean | undefined

在不触发事件的情况下更新。

创建此几何图形的简化版本。对于线串,使用算法(Douglas Peucker)。对于多边形,采用基于量化的简化以保留拓扑结构。

Name Type 描述
tolerance number

简化的容差距离。

返回:
原始几何的新简化版本。

transform(source, destination){this} inherited

将几何图形的每个坐标从一个坐标参考系统转换至另一个坐标参考系统。该几何图形将被原地修改。例如,线变换后仍为线,圆变换后仍为圆。若不想原地修改几何图形,请首先对几何图形调用 clone(),然后在其克隆上使用此函数。

Name Type 描述
source ProjectionLike

当前投影可以是字符串标识符或Projection对象。

destination ProjectionLike

所需的投影可以是字符串标识符或Projection对象。

返回:
该几何。请注意,原始几何已原地修改。

translate(deltaX, deltaY) inherited

平移几何对象。这会就地修改几何坐标。如果您想要一个新的几何对象,请首先 clone() 该几何对象。

Name Type 描述
deltaX number

X增量

deltaY number

Y轴增量。

un(type, listener) inherited

取消对特定类型事件的监听。

Name Type 描述
type string | Array.<string>

事件类型或事件类型数组。

listener function

监听器函数。

unset(key, silent) inherited

移除属性

Name Type 描述
key string

键名

silent boolean | undefined

在不触发事件的情况下取消设置。