Ошибка здесь API геокодирования
Использование API геокодирования Here для получения LinkID из заданного местоположения (lat,long).
Пример: (37,399643,-121,953085); Расстояние приближения = 50м;
https://reverse.geocoder.api.here.com/6.2/reversegeocode.json?prox=37.399643,-121.953085,50&mode=retrieveAddresses&locationAttributes=linkInfo&gen=9&app_id={AppID} & app_code = {AppCode}
Вышеуказанный запрос работает отлично. Возврат соответствующих LinkID на месте. Увидеть ниже:
Теперь, если мы уменьшим радиус близости с 5 м до 5 м -> Здесь ответ API переместится в совершенно другое место.
https://reverse.geocoder.api.here.com/6.2/reversegeocode.json?prox=37.399643,-121.953085,5&mode=retrieveAddresses&locationAttributes=linkInfo&gen=9&app_id={AppID} & app_code = {AppCode}
Местоположение, возвращаемое здесь, совершенно неверно. Выделенное место на самом деле находится в 5-6 милях от правильного местоположения. Кажется, эта ошибка возникает при значениях радиуса близости < 30м.
1 ответ
Обратный геокодер возвращает результаты улиц или адреса на улице, только если геометрия улицы находится в заданном радиусе. В противном случае он возвращается к результатам на уровне области и возвращает центр области, где расположена центральная точка близости.
Пример: (37,399643,-121,953085); Близость расстояния = 22 м
С радиусом 22 близость все еще содержит уличную геометрию. Обратный геокодер возвращает один уличный результат, который называется "ReferenceId": "1121660494".
Пример: (37,399643,-121,953085); Близость расстояния = 21 м;
С радиусом 21 - ни одна улица в радиусе. Поэтому Геокодер возвращает ссылку, по которой находится центральная точка города - Санта-Клара.