我有这个实践项目,允许用户在屏幕上画,因为他们触摸他们的手指。很简单的应用程序,我做了一个练习回来。 我的小表弟擅自用我的 iPad 在这个应用程序上画东西(孩子们的画: 圆圈,线条,等等,想到什么就画什么)。 然后他开始画圆,然后他要求我画一个“好的圆”(根据我的理解: 让画的圆完美的圆,正如我们所知道的 不管我们用手指在屏幕上画什么东西有多稳定,圆永远不会像圆应该的那样圆)。
所以我的问题是,在代码中有没有什么方法可以让我们首先检测到用户画的一条线,这条线形成了一个圆,然后通过在屏幕上使它完美地圆起来,生成大致相同大小的圆。制作一条不那么直的直线是我会知道如何做的事情,但是对于圆,我不太知道如何用 Quartz 或其他方法来做。
我的理由是,线的起点和终点必须在用户举起手指来证明他实际上是在试图画一个圆之后相互接触或交叉。