【发布时间】:2012-02-25 15:05:46
【问题描述】:
在我的应用中,我允许用户通过添加箭头(自定义 ArrowView)来注释照片。可以添加许多箭头,具有各种缩放和旋转。
我正在尝试实现通过触摸选择箭头。目前,我正在迭代和使用
CGRectContainsPoint(arrowView.frame, touchPoint)
根据触摸手势决定选择哪个箭头。
但是,当一些箭头很大并旋转到 45 度时(因为框架变大),这不起作用。
问题: 我想使用转换为父坐标而不是框架的箭头边界。应用缩放和旋转时如何获得此信息?
或者,有没有更好的方法来解决这个选择问题?
【问题讨论】:
-
翻译成父坐标的箭头边界是frame的定义。您能否发布比您发布的代码更多的代码来显示您如何定义接触点?
-
但框架在旋转时会变大,而边界保持不变。我想获得应用旋转的原始框架(即,矩形的边可能不平行于父视图框架的边)。这就是我所说的“箭头的边界转换为父坐标”。