1

我想使用来自 RouteService 的响应添加到 OL3 地图图层,例如:

http://openls.geog.uni-heidelberg.de/route?start=9.256506,49.240011&end=8.72083,49.7606&via=&lang=de&distunit=KM&routepref=Car&weighting=Fastest&avoidAreas=&useTMC=false&noMotorways=false&noTollways=false&noUnpavedroads=false&noSteps=false假&说明=假

(我从http://wiki.openstreetmap.org/wiki/OpenRouteService 获取

它包含内部带有 GML 的 XML。

是否可以使用此响应 XML/GML 向 OL3 地图添加新图层?

4

1 回答 1

0

当您构建您的 url 调用时,它可能会采用以下方式:

var url = 'http://openls.geog.uni-heidelberg.de/route?start=[etc]';
  // +/-? {'INFO_FORMAT': 'application/vnd.ogc.gml'};

$.ajax(url).then(function(response) {
  var routeFeature = parser.readFeatures(response);
  someOverlay.getSource().addFeatures(routeFeature);
  });

其中 [etc] 是您的 from、to、路由方法和其他参数的构造。根据您构建 [etc] 的方式,请注意encodeURI(url)以便正确格式化奇怪的字符。

我自己还没有实现这个,抱歉没有代码,但它应该相当简单。注意* 如果响应已经以这种方式传递,您可能不必指定 INFO_FORMAT。

于 2016-02-02T19:30:59.190 回答