我们可以使用HERE Routing API的REST请求,将多个多边形区域避免在路由请求中。
例如,在请求中包括以下参数:
- wp:起点和终点坐标
- avoidareas:一个多边形列表,用于指定需要避免的区域
以下是一个示例请求,其中包含两个多边形避免区域:
https://route.ls.hereapi.com/routing/7.2/calculateroute.json
?apiKey={YOUR_API_KEY}
&waypoint0=geo!52.5165546,13.3771904
&waypoint1=geo!52.5202233,13.3862399
&mode=fastest;car;traffic:disabled
&avoidareas=52.5023,13.3483;52.5476,13.4089
;52.5123,13.3621;52.5358,13.3880
这个请求将返回一个避免了指定多边形区域的最快驾车路线。
注意,在“avoidareas”参数中,每个多边形区域坐标需以分号分隔并以逗号分隔它们的纬度和经度。
我们也可以使用HERE Routing API的JavaScript SDK来实现类似的请求。以下是一个示例代码片段:
let routingParams = {
mode: 'fastest;car;traffic:disabled',
avoidareas: [
{ lat: 52.5023, lng: 13.3483 },
{ lat: 52.5476, lng: 13.4089 },
{ lat: 52.5123, lng: 13.3621 },
{ lat: 52.5358, lng: 13.3880 }
],
waypoint0: 'geo!52.5165546,13.3771904',
waypoint1: 'geo!52.5202233,13.3862399'
};
router.calculateRoute(routingParams,
(result) => {
console.log(result);
},
(error) => {
console.log(error);
});
此代码片段使用“avoidareas”参数将多个多边形区域指定为避免区域。调用“router.calculateRoute”函数并指定起点和终点的地理坐