MKCircle - Ширина штриха, эквивалентная метрам

У меня есть MKCircle. Я хотел бы иметь возможность установить ширину штриха, эквивалентную метрам, а не точкам. Так что я могу нарисовать наложение как с радиусом в метрах, так и с шириной штриха в метрах.

Я понимаю, что отношение точек к метрам меняется всякий раз, когда карта масштабируется. У меня сейчас очень мало аннотаций (1), поэтому удаление и чтение их при увеличении должно быть в порядке, если я смогу найти способ рассчитать желаемую ширину штриха в точках для расстояния в метр при заданном состоянии карты.


person Nick    schedule 30.05.2011    source источник


Ответы (1)


Первое, на что следует обратить внимание, — действительно ли вы хотите это сделать: линия может стать невидимо тонкой, если пользователь уменьшит масштаб.

Я вижу единственный способ сделать это — создать MKCoordinateRegion соответствующего размера, используя MKCoordinateRegionMakeWithDistance, а затем используйте convertRegion:toRectToView:, чтобы преобразовать его в CGRect, из которого вы можете прочитать из ширины/высоты, чтобы рассчитать соответствующую ширину линии.

person Anomie    schedule 30.05.2011
comment
У меня пол 1.0, чтобы не было видно при уменьшении масштаба. - person Nick; 31.05.2011