我正在尝试使用绘画,删除,突出显示,撤消/重做功能构建基本的Android Canvas绘画应用程序。我已经将每个路径都设置为离散并保持它们的堆栈以实现撤消/重做功能。现在我想通过点击特定的注释来实现擦除,我需要删除它。我无法检测到用户在哪条路径上进行了触摸。
示例实现应该像三星galaxy tabs动作备忘录中的动作备忘录一样。http://support-us.samsung.com/spsn/detail.jsp?ctg_id=1280&sub_ctg_id=&live_id=&video_id=2942911618001 请参阅该
的删除功能答案 0 :(得分:0)
这里的基本问题是命中测试。蛮力方式是存储所有注释,然后对每个注释检查距离的每个坐标,如果距离小于某个阈值,则命中测试成功。但这是高效率的
经过大量研究后,我终于用以下方法解决了这个问题:
我们可以使用convex-hull代替边界框来进一步改善我们找到候选者的近似值