Openlayers 3 - 将几何数据加载到矢量图层

时间:2015-11-30 18:27:57

标签: openlayers-3

更新:基本问题是,如果REST接口提供的GeoJSON(Json数据在问题末可见)是矢量图层的有效GeoJSON,因为只要我将其添加为源代码矢量图层,图层被破坏。

目前没有用于上传形状的REST接口,所以我只从当前形状中获取了一些有效坐标,并在服务器端创建了静态 JSON

我尝试使用户可以在矢量图层上绘制形状(多边形,线条),然后将几何数据存储在服务器上,下次加载地图时,应该再次显示。但是当我将我的REST接口定义为矢量图层的源时,似乎有些问题,因为绘制并将对象添加到矢量图层中不再有效。

这里是我从OpenLayers示例中汇总的代码。首先是图像应该是什么样子:

Shapes how they should be displayed 我用drawend事件提取了地图上的坐标,并构建了一个REST接口,我可以在其中加载几何数据,这是我得到的矢量图层源的响应:

{
   "type":"FeatureCollection",
   "crs":{
      "type":"name",
      "properties":{
         "name":"EPSG:2000"
      }
   },
   "features":[
      {
         "type":"Feature",
         "id":"1",
         "properties":{
            "name":"TEST1"
         },
         "geometry":{
            "type":"LineString",
            "coordinates":[
               [
                  -5920506.46285661,
                  1533632.5355137766
               ],
               [
                  -1882185.384494179,
                  234814.55089206155
               ]
            ]
         }
      }
   ]
}

但是,如果我加载它,将不会显示任何内容,并且不再可以在该图层上绘制(如果我从矢量图层源中删除“source”属性它再次起作用)

这里有关于pastebin的完整代码:Example Code

1 个答案:

答案 0 :(得分:-1)

我同时解决了这个问题,我试图将GeoJSON加载到我的矢量图层中,但之后的矢量图层总是被打破。由于我是开放图层的新手,我没有注意到我的错误,但我的GeoJSON中出现了语法错误,我提供的坐标也是错误的。

在更正语法和坐标后,一切都按预期工作,如上所述,EPSG:3857也是正确的选择。对不起我开放图层的第一次凌乱体验,但感谢友好的帮助;)