2011-09-09 50 views
2

我有一个简单的圆形CGPath。 我无法水平翻转它,就像镜子效果一样。镜像翻转CGPath

如果你回答这个问题之前,请尽量提供一个完整的代码,而不是只属一般参考...

THX

+1

您没有说明您的任何企图。基本上你的问题是这样的:“这就是我想要做的,请发送代码”我们不知道你被困在哪里,所以很难帮助你。如果您为了清晰起见可以对此进行编辑,请将其标记为供审查主持人注意。 –

回答

4
UIBezierPath* aPath = [UIBezierPath bezierPathWithOvalInRect:CGRectMake(0, -240, 240, 240)]; 

// This will mirror the path 

CGAffineTransform rotation = CGAffineTransformMakeScale(1.0, -1.0); 

CGMutablePathRef f = CGPathCreateMutable(); 
CGPathAddPath(f, &rotation, aPath.CGPath); 

CAKeyframeAnimation *pathAnimation = [CAKeyframeAnimation animationWithKeyPath:@"position"]; 
pathAnimation.calculationMode = kCAAnimationPaced; 
pathAnimation.fillMode = kCAFillModeRemoved; 
pathAnimation.rotationMode = kCAAnimationRotateAutoReverse; 
pathAnimation.removedOnCompletion = NO; 
pathAnimation.path = f; 
pathAnimation.repeatCount = HUGE_VALF;; 
pathAnimation.duration = 5.0f; 
[r2.layer addAnimation:pathAnimation forKey:nil];