【发布时间】:2011-12-29 20:29:58
【问题描述】:
我有一个带有边界框的精灵,我想检测它与 CGMutablePathRef 的交集。我该怎么做?
【问题讨论】:
标签: iphone objective-c ios ipad cocos2d-iphone
我有一个带有边界框的精灵,我想检测它与 CGMutablePathRef 的交集。我该怎么做?
【问题讨论】:
标签: iphone objective-c ios ipad cocos2d-iphone
没有现成的解决方案。它还取决于您使用的 CGPath 的哪些功能。如果只是一系列点,可以使用普通的line with rectangle intersection test。
其他一切(例如贝塞尔曲线和矩形交点)都将非常复杂。
【讨论】:
如果是纯矩形比较,可以使用CGPathGetBoundingBox获取路径的边界框,然后使用CGRectIntersectsRect判断是否有交集。
【讨论】:
根据性能需要,绘制一个 1 位深的位图,剪切到 CGRect。然后扫描一个像素。 (这种技术往往更适合测试到某个点。)
【讨论】: