我需要一个从地理坐标系统到/从另一个坐标系统转换。我认为最明显的方法是给出系统的两个边界框。
因此,如果我有一个经纬度坐标的geo bbox,以及一个与之对应但在我自己的坐标中的非geo bbox,我想要一个可以将geo- to -me和me-to-geo转换的xfm。
我需要一个基于代理的编程环境,它有自己的基于minX,minY,maxX,maxY的坐标系统,就像Turf表达bboxes一样。例如,它还可以在地理坐标和画布中的像素之间进行转换。
我在Turf中找不到这样的coord变换,但我可能遗漏了它,或者有一种简单的方法可以使用Turf原语来实现它。
有没有办法使用Turf来实现这样的coord变换?
发布于 2020-05-04 05:37:47
我会使用proj4js来处理投影转换。您的画布可以用Pseudo-Mercator (x,y)表示,而turf将继续在WGS84 (长,后)中工作。
const xyCoordsToLatLong = (xy_pair) => {
return proj4(PSEUDO_MERC_DATUM, WGS84_DATUM, xy_pair);
}
const latLongCoordsToXY = (latlong_pair) => {
return proj4(WGS84_DATUM, PSEUDO_MERC_DATUM, latlong_pair);
}然后,bbox [0,0,500,200]的画布将表示为[0, 0, 0.004491576420597608, 0.0017966305679443192]。
完整的演示here。
https://stackoverflow.com/questions/61491927
复制相似问题