类:投影

ol/proj/Projection~投影


import Projection from 'ol/proj/Projection.js';

在大多数情况下,无需创建此类的实例。相反,当需要投影信息时,可使用字符串投影代码或标识符(例如 EPSG:4326)代替投影实例。

该类库支持在以下投影间转换坐标:

WGS 84 / 地理坐标系 - 使用代码 EPSG:4326CRS:84urn:ogc:def:crs:EPSG:6.6:4326urn:ogc:def:crs:OGC:1.3:CRS84urn:ogc:def:crs:OGC:2:84http://www.opengis.net/gml/srs/epsg.xml#4326,或 urn:x-ogc:def:crs:EPSG:4326。 WGS 84 / 球面墨卡托投影 - 使用代码 EPSG:3857EPSG:102100EPSG:102113EPSG:900913urn:ogc:def:crs:EPSG:6.18:3:3857,或 http://www.opengis.net/gml/srs/epsg.xml#3857。 WGS 84 / 通用横轴墨卡托投影带 - 使用代码 EPSG:32601EPSG:32660 用于北半球带,以及 EPSG:32701EPSG:32760 用于南半球带。注意,内置的通用横轴墨卡托投影转换精度较低(误差约为0.1米),比您在库(proj4js)中可能获得的那些转换精度更低。

如需额外的投影支持,或使用比内置转换更高精度的转换,您可以使用投影库(proj4js)。通过 proj4js,在添加任何新的投影定义后,调用 register 函数。

您可以使用 get 函数来获取某个已注册投影的投影实例。

new Projection(options)

Name Type 描述
code string

空间参考系统标识符代码,例如EPSG:4326.

units Units | undefined

单位:除非定义了 proj4 投影,否则为必需。code.

extent Extent | undefined

空间参考系统的有效范围。

axisOrientation string (defaults to 'enu')

Proj4中指定的轴方向。

global boolean (defaults to false)

投影是否适用于全球?

metersPerUnit number | undefined

空间参考系统的单位米数。若未指定,则units用于获取每单位的米数METERS_PER_UNIT查找表。

worldExtent Extent | undefined

空间参考系统的全球范围。

getPointResolution GetPointResolution | undefined

用于确定点分辨率的函数。该函数被调用,并传入一个参数。number视图分辨率与一个Coordinate接受参数并返回number在传入坐标处的投影分辨率。如果这是undefined,默认getPointResolution函数将被使用。

方法

getAxisOrientation(){string}

获取该投影的轴方向。示例如下: enu - 默认东向、北向、上向。 neu - 北向、东向、上向 - 适用于“纬度/经度”地理坐标或南向横轴墨卡托投影。 wnu - 西向、北向、上向 - 部分行星坐标系使用西正向坐标系。

返回:
轴向。

getCode(){string}

获取该投影的代码,例如 '欧洲石油调查组织:4326'。

返回:
代码。

获取此投影的有效范围。

返回:
范围.

getMetersPerUnit(){number | undefined}

获取该投影每单位对应的米数。若投影未配置 metersPerUnit 或单位标识符,则返回 undefined

返回:
米。

获取此投影的单位。

返回:
测量单位。

getWorldExtent(){Extent}

获取该投影的全球范围。

返回:
范围.

isGlobal(){boolean}

该投影是否为全球投影?

返回:
投影是否为全局投影?

setExtent(extent)

设置该投影的有效范围。

Name Type 描述
extent Extent

范围.

setGetPointResolution(func)

设置 getPointResolution 函数(针对此投影,请参阅 getPointResolution)。

Name Type 描述
func function

函数

setGlobal(global)

设置投影是否为覆盖全球的全局投影

Name Type 描述
global boolean

投影是否为全球的?

setWorldExtent(worldExtent)

设置该投影的世界范围。

Name Type 描述
worldExtent Extent

全球范围 [minlon, minlat, maxlon, maxlat]。