前言
openlayers版本10.1.0
内置坐标系
openlayers内置有4326的经纬度坐标系和3857的墨卡托投影坐标系,默认3857。
自定义坐标系
EPSG定义的坐标系
对于EPSG官网上定义的坐标系,可以通过proj4库注册使用
根据坐标系代号获取proj4库构建坐标系的参数字符串
坐标系代号:4490
参数字符串:+proj=longlat +ellps=GRS80 +no_defs +type=crs
import { register } from 'ol/proj/proj4'
import proj4 from 'proj4'
// 注册坐标系
proj4.defs('EPSG:4490', '+proj=longlat +ellps=GRS80 +no_defs +type=crs')
register(proj4)
// 下面即可通过key EPSG:4490使用坐标系
有些时候,arcgis的MapService服务参数里面返回的不是坐标系代号,而是wkt字符串,这时候直接通过wkt构建坐标系即可
import { register } from 'ol/proj/proj4'
import proj4 from 'proj4'
// 注册坐标系
proj4.defs('EPSG:1201', 'PROJCS["NAD_1983_HARN_StatePlane_Illinois_East_FIPS_1201",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",984250.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-88.33333333333333],PARAMETER["Scale_Factor",0.999975],PARAMETER["Latitude_Of_Origin",36.66666666666666],UNIT["Foot_US",0.3048006096012192]]')
register(proj4)
高德地图
坐标系:GCJ-02
目前没有找到最佳的坐标系定义方法
百度地图
坐标系:bd09ll经纬度坐标系和bd09mc投影坐标系
目前没有找到最佳的坐标系定义方法