Я смог сделать запрос к HERE API и получить ответ, я поместил все путевые точки из отрезка в массив (широту и долготу), и он действительно рисует ломаную линию, но не идет по дороге. Он просто проходит через здания и т. Д.
Это мой компонент Polyline:
<Polyline coordinates={this.state.route} strokeWidth={7} strokeColor="#2ecc71" geodesic={true} />
this.state.route - это массив координат, который я получил так:
axios.get(`https://route.api.here.com/routing/7.2/calculateroute.json?app_id={myappid}&app_code={myappcode}&waypoint0=geo!${from_lat},${from_long}&waypoint1=geo!${to_lat},${to_long}&mode=fastest;bicycle;traffic:disabled`).then((response) => {
console.log(response.data.response.route);
response.data.response.route[0].leg[0].maneuver.map((m) => {
routeCoordinates.push({latitude: m.position.latitude, longitude: m.position.longitude});
})
console.log(routeCoordinates);
this.props.navigation.navigate('ShowMap', {
spot: chosenSpot,
route: routeCoordinates,
});
}).catch((error) => {
console.log(error);
})
А затем я передаю этот массив на экран и помещаю его в мое состояние как route
.
Я ожидаю, что она нарисует ломаную линию над дорогами, а не над зданиями и прочим.
Вот изображение, показывающее, как оно выглядит (обратите внимание, что синие линии просто для обозначения названий дорог, которые не имеют никакого отношения к рисованию ломаной линии):