1、引入座標轉換js庫文件proj4.js,地址:http://www.bootcdn.cn/proj4js/;
2、加入需要的座標參考的定義,兩種方式:
1)單個:
proj4.defs('WGS84', "+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees");
2)多個(分兩種):
proj4.defs([
[
'EPSG:4326',
'+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees'],
[
'EPSG:4269',
'+title=NAD83 (long/lat) +proj=longlat +a=6378137.0 +b=6356752.31414036 +ellps=GRS80 +datum=NAD83 +units=degrees'
]
]);
proj4.defs("EPSG:4610","+proj=longlat +a=6378140 +b=6356755.288157528 +units=dd +no_defs");
proj4.defs("EPSG:2360","+proj=tmerc +lat_0=0 +lon_0=108 +k=1 +x_0=36500000 +y_0=0 +a=6378140 +b=6356755.288157528 +units=m +no_defs");
3、使用ol的方法將xy座標轉換爲經緯度座標:
var c = '36548279.19';
var d = '2557986.78';
var xyCd = [c, d];
// 假如從4490的轉到3度帶的36度帶位置,查詢36度帶處的參考爲2360
xyCd = ol.proj.transform(xyCd, new ol.proj.Projection({code:'EPSG:2360'}),
new ol.proj.Projection({code:'EPSG:4490'}));
好了,現在得到的座標是經緯度的十進制座標,xyCd的值爲:[108.47132924412054,23.12072825747068]。