在UIView中的BezierPath旋转

我正在绘制一个BezierPath on Touch事件。 现在我必须使用手势方法在相同的位置上旋转Bezierpath。 但问题是,轮换之后它的地位就变了。 它看起来像下面的图像..我怎样才能解决这个问题?

贝塞尔路径图

上图是原始图像。 与我分享你的想法..在此先感谢

在Apple文档中查看。

applyTransform:使用指定的仿射变换matrix变换path中的所有点。

 - (void)applyTransform:(CGAffineTransform)transform 

我没有试过这个。 但是这里是如何从链接rotate -nsbezierpath-objects旋转一个NSBezierPath 。 尝试在UIBezierPath上使用类似的方法。

 - (NSBezierPath*)rotatedPath:(CGFloat)angle aboutPoint:(NSPoint)cp { // return a rotated copy of the receiver. The origin is taken as point <cp> relative to the original path. // angle is a value in radians if( angle == 0.0 ) return self; else { NSBezierPath* copy = [self copy]; NSAffineTransform* xfm = RotationTransform( angle, cp ); [copy transformUsingAffineTransform:xfm]; return [copy autorelease]; } } 

它使用:

 NSAffineTransform *RotationTransform(const CGFloat angle, const NSPoint cp) { // return a transform that will cause a rotation about the point given at the angle given NSAffineTransform* xfm = [NSAffineTransform transform]; [xfm translateXBy:cp.x yBy:cp.y]; [xfm rotateByRadians:angle]; [xfm translateXBy:-cp.x yBy:-cp.y]; return xfm; }