Как вращать MKMapRect overlayBoundingMapRect
Я разрабатываю приложение карты помещений. это для устройств iPad. Я использую цель-с.
У меня есть наложение внутри boundingMapRect, это изображение (план этажа) из файла PDF.
Это показано с правильным размером.
но одна проблема для меня - происхождение прямоугольника.
Я хочу, чтобы прямоугольник немного повернулся, потому что он не показан на вершине здания, которое я хотел.
Вот как это показано:
вот как я хочу это:
Есть ли способ повернуть чрезмерно с определенным углом?
или я могу повернуть mapView перед добавлением наложения, чтобы он мог соответствовать наложению
Спасибо,
1 ответ
Вы можете повернуть вид карты перед наложением на него, используя следующую строку кода:
self.mapView.transform = CGAffineTransformMakeRotation(x);
где x - это значение угла с плавающей точкой.
Я не думаю, что это решит вашу проблему, так как свойство boundingMapRect протокола MKOverlay будет по-прежнему получать те же значения широты и долготы. Наилучшим подходом к решению этой проблемы было бы создание полного изображения региона, отображаемого в виде карты.
Как это изображение с: http://www.raywenderlich.com/wp-content/uploads/2013/01/overlay_park.png
В этом уроке: оверлейные изображения и оверлейные виды с помощью учебного пособия MapKit Чезаре Рокки
источник: https://www.raywenderlich.com/30001/overlay-images-and-overlay-views-with-mapkit-tutorial
Аналогичный подход используется автором.
Здесь я предполагаю, что вы пытаетесь наложить прямоугольное изображение на область карты, которая не совсем прямоугольной формы. Вы можете проверить это по значениям широты и долготы (это прямоугольник, только если нижнее правое значение может быть получено из значений широты и долготы в верхнем правом и нижнем левом углу).