Неправильный ограничивающий прямоугольник в NMAMapView для определенных уровней масштабирования с 3D-проекцией - PullRequest
0 голосов
/ 07 января 2020

Если я полностью уменьшу мой NMAMapView, чтобы вы могли видеть земной шар (NMAMapViewMinimumZoomLevel), вызов свойства NMAMapView boundingBox возвращает следующие координаты для всех свойств top * / bottom *:

po self.hereMapView.boundingBox?.topRight
▿ Optional<NMAGeoCoordinates>
  - some : <NMAGeoCoordinates: 0x2828bde00; latitude = -90.000000; longitude = 0.000000; altitude = -340282346638528859811704183484516925440.000000>

self.hereMapView.boundingBox?.topLeft
▿ Optional<NMAGeoCoordinates>
  - some : <NMAGeoCoordinates: 0x2828bca20; latitude = -90.000000; longitude = 0.000000; altitude = -340282346638528859811704183484516925440.000000>

// ...

Это также относится к некоторым уровням масштабирования выше. Это не кажется мне правильным, это ошибка в Here SDK?

Редактировать : Кажется, это проблема только с 3D-проекцией, в 2D-проекции с наименьшим уровнем масштабирования мы получаем действительные координаты

1 Ответ

1 голос
/ 23 января 2020

После обновления в вопросе (допустимая ограничивающая рамка в 2D-проекции) и комментариев @dashchak это ожидаемое поведение. Ограничивающая рамка представляет собой прямоугольник, который будет ограничен значением, отличным от границ прямоугольника.

Из Документация :

Ограничивающий прямоугольник карты - это наименьший из возможных NMAGeoBoundingBox, который содержит всю область карты, видимую в данный момент на экране. Если карта находится в 2D виде (нулевой наклон), boundingBox должен (почти) точно совпадать с границами прямоугольника экрана. Если карта находится в трехмерном виде, видимая область экрана представляет собой трапецию в географическом пространстве (видимая область шире в верхней части экрана, чем внизу из-за перспективы). Таким образом, ограничительная рамка будет содержать некоторую область, которая на самом деле не видна на экране в этом случае.

...