问题描述
我在 OpenGL ES 中绘制了一条路径.如果需要,我可以将其转换为 CGPath.
I have a path drawn in OpenGL ES. I can convert it to a CGPath if needed.
我如何检查它是否与自身相交(如果用户创建了一个完整的循环)?
How would I check if it intersects itself (If the user created a complete loop)?
推荐答案
Graham Cox 有一些 关于如何检测 CGPathRef 和 CGRect 的交集的非常有趣的想法,这与您的问题相似并且可能具有教育意义.潜在的问题很困难,大多数实际的解决方案将是近似值.
Graham Cox has some very interesting thoughts on how to detect the intersection of a CGPathRef and a CGRect, which is similar to your problem and may be educational. The underlying problem is difficult, and most practical solutions are going to be approximations.
您可能还想在 CGPathRef 交叉点上查看这篇 SO 文章,这也与您的问题类似,并且一些提出的解决方案与上面的格雷厄姆在同一空间中.
You may also want to look at this SO article on CGPathRef intersection, which is also simliar to your problem, and some of the proposed solutions are in the same space as Graham's above.
这篇关于检查绘制的路径/CGPath 在 iPhone 游戏中是否与自身相交的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!