我从数据库中读取了一个点x,y,该点保存在投影EPSG:28191
。我正在尝试在地图上显示投影EPSG:3857
的位置。 我使用以下代码进行投影:
proj4.defs("EPSG:28191", "+proj=cass +lat_0=31.73409694444445 +lon_0=35.21208055555556 +x_0=170251.555 +y_0=126867.909 +a=6378300.789 +b=6356566.435 +towgs84=-275.7224,94.7824,340.8944,-8.001,-4.42,-11.821,1 +units=m +no_defs");
ol.proj.setProj4(proj4);
var coors= ol.proj.transform(["+x+", "+y+ "], 'EPSG:28191', 'EPSG:3857');
问题是我在投影后得到的坐标是错误的。该点位于不同位置。
您使用的投影定义与应有的定义略有不同(如 toWGS84 设置的小数(。
尝试使用此定义更新它,从这里获取:
+proj=cass +lat_0=31.73409694444445 +lon_0=35.21208055555556 +x_0=170251.555 +y_0=126867.909 +a=6378300.789 +b=6356566.435 +towgs84=-275.722,94.7824,340.894,-8.001,-4.42,-11.821,1 +units=m +no_defs