UIView转换属性以扭曲圆圈以使其具有3D外观

时间:2012-10-18 00:03:53

标签: ios uiview cgaffinetransform catransform3drotate

我使用的MKMapView添加了MKCircleView。它继承自UIView,因此我可以使用transform属性。

没有变换它看起来很平坦,并且在引脚旁边看起来很奇怪,因为它是3D:

enter image description here

我想将其视为类似于:

enter image description here

我尝试过设置CATransform3DRotate的示例,但所涉及的数学不是我的技能,所以没有什么可以接近。

我该怎么做?

1 个答案:

答案 0 :(得分: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)缩放,你就完成了!

如果这没有帮助,您应该多做一点,创建自己的自定义地图叠加层,如this tutorial

中所述 祝你好运!