如何在iPad中实现对由bezier曲线绘制的曲线的触控。
发布于 2011-11-22 11:45:02
您可以使用UIBezierPath的containsPoint:
方法来确定触摸是否在曲线内。然而,只有当路径是闭合类型时才有效,例如圆形或矩形。
我从未测试过的一件事是,一条路径从起点到终点是否被一条看不见的线隐式闭合。就像在多边形的三条边中一样,当第四条边不存在时,可以检测到4条边中的命中,除非你在想象中。
对于曲线是单个笔划的情况(如在绘画程序中),您必须人为地扩展笔划以检测您的触摸。实现这一点的一种方法是从两端运行切线,并沿着曲线绘制一条形状相同的平行线,大多数矢量程序在您请求“扩展线/笔划”时都会这样做,然后您可以在扩展的笔画中检测到命中。伸展划水的丰满程度将决定触觉的精确度。
https://stackoverflow.com/questions/8207778
复制