更改Cesium.js中的地图投影以匹配来自Turf.js内部查询的结果



我在cesium.js中显示一个点和一个多边形,使用草皮来检查是多边形内部的点。

当在剖腹产(或geojson.io(中显示时,该点显然在多边形之外,如下所示:

http://geojson.io/#id=gist:kujosheist/1030E392BD751DAF59AF59AF57AA412A49CCUM

但是,当我在Turf.js Issiues页面上进行查询时:

https://github.com/turfjs/turf-inside/issues/15

我被告知这是因为Geojson(因此("因为它使用世界Web Mercator投影(EPSG:3857(,因此"歪曲了这一点",并且"使用QGIS使用QGIS的WGS84查看相同的观点/Polygon"。显示点在多边形内部。

所以我的问题是:我如何更改cesium中使用的地图投影(以及在geojson.io中(,以便在多边形内正确显示该点?

我不确定geojson.io或cesium处理不同的坐标系统的能力,但是您可以在Geojson中指定指示功能点所使用的坐标系的CRS元素。在您的功能集合下,这是作为成员添加的。例如:

{
    {
    "type": "FeatureCollection",
    "crs": {
    "type": "name",
    "properties": {
      "name": "urn:ogc:def:crs:OGC:1.3:CRS84"
    },
    ...the rest of your structure...
}

,但是就像我说的那样,这取决于地图显示软件,以关注您指定的CRS并将其用于项目坐标。如果它不支持您拥有的坐标系,那么您需要选择其他地图显示软件或将坐标转换为支持的坐标系。

最新更新