Свойство UIView Transform для перекоса круга, чтобы придать ему трехмерный вид
Я использую MKMapView
с добавлением MKCircleView
, Наследуется от UIView
так что я могу использовать свойство transform.
Он выглядит довольно плоским без преобразования, и выглядит странно рядом с булавкой, так как это 3D:
Я бы хотел, чтобы это выглядело так:
Я пытался играть с примерами настройки CATransform3DRotate
но математика не является моим умением, поэтому ничто не приблизилось даже близко.
Как я могу это сделать?
1 ответ
Я бы подделал это с 2d масштабированием, используя
CGContextScaleCTM
Вы можете сделать это с каждым UIView:
UIView *v = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 5, 5)];
CGAffineTransform scale = CGAffineTransformMakeScale(1.0f, 0.6f);
[v setTransform:scale];
Масштабируйте по коэффициентам (1,0, 0,6) и все готово!
Если это не помогает, вам следует сделать немного больше, создав собственное наложение карты, как описано в этом руководстве
Удачи!