我有一个控制器,使用CAKeyframeAnimation
随机掉落许多图片,我应该通过触摸跟踪来裁剪这些图像。
任何动画都使用CALayer
来呈现动画图像,并且我正在尝试检测此层内部的触摸事件,使用[layer presentationLayer]
。
问题是,为了裁剪这个图像,我应该从我的触摸跟踪器段和层创建路径,但我还没有想出如何创建这些路径。问题在于如何在下落的CALayer
坐标系中检测此触摸点,附带图片提供更多信息。
有什么想法吗?
为了检测与控制器坐标系相关的层上的触摸点,我正在使用以下代码:
- (void) touchesMoved:(NSSet *)touches :(CGPoint) movingPoint :(UIEvent *)event
{
NSArray *layers = [[contextView layer] sublayers];
for (CALayer *layer in layers) {
CGRect imageRect = [[layer presentationLayer] frame];
if(CGRectContainsPoint(imageRect, movingPoint)) {
NSLog(@"Image position - x %f y %f", movingPoint.x, movingPoint.y);
}
}
}