如何获得坐标的路线匹配位置?

时间:2016-08-24 08:56:58

标签: javascript here-api

我想知道如何获得给定(lat,lon)的最近路线位置。

我发现使用H.service.RoutingService.calculateRoute可以获得它。航点是mappedMatched,我可以在结果对象中获得位置:

result.response.route[0].waypoint[i].mappedPosition

有更好的方法吗? (仅为此目的计算路线是一个小硬核)

1 个答案:

答案 0 :(得分:0)

我认为当您对地理位置进行地理编码时,您应该可以获得类似的内容(可能相同)。如果匹配足够好,响应会有一个'navigationPosition'(我相信这将是您驾驶/导航到访问此位置的点)。

您可以使用H.service.GeocodingService#reversGeocode从JSAPI访问JavaScript中的Geocoder API。

以下是您可以尝试的REST示例:https://developer.here.com/api-explorer/rest/geocoder/reverse-geocode

参见Response.View [0] .Result [0] .Location.NavigationPosition

{
  "Response": {
    "MetaInfo": {
      ...
    },
    "View": [
      {
        ...
        "Result": [
          {
            ...
            "Location": {
              ...
              "DisplayPosition": {
                "Latitude": 41.88403,
                "Longitude": -87.63881
              },
              "NavigationPosition": [
                {
                  "Latitude": 41.88425,
                  "Longitude": -87.63845
                }
              ],
              ...
            }
          }
        ]
      }
    ]
  }
}