CGRect 和 CGPath 的交集

2023-11-23

有没有一种有效的方法来检测 CGPath 和 CGRect 是否相交?

我考虑过循环遍历 CGRect 内的每个点,如下所示:

for (CGPoint point in rect) {
   if (CGPathContainsPoint(path, nil, point, NO)) {
      intersects = YES;
      break;
}

但我想知道是否有更好的方法。

In my app there are many CGrects and one CGPath that may change its shape. I just need to check which rects are intersecting with the path, as shown in the image bellow. enter image description here


  • 在位图中绘制路径(alpha 上白色)
  • 然后检查位图的矩形部分。检查该区域是否有白色,这意味着重叠

-- 为了提高性能,仅绘制矩形中的位图部分。


我还没有尝试过这个,它不会提供实时性能,但对我来说听起来不错

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CGRect 和 CGPath 的交集 的相关文章

随机推荐

  • 在一个事务中调用多个 SQL Server 存储过程

    为了在我当前的项目中使用 我创建了一个允许我调用 SQL Server 异步的类 我的代码如下所示 internal class CommandAndCallback
  • ASP.Net URLEncode & 符号用于查询字符串

    我需要重定向到一个 url 将参数作为查询字符串传递 这可以在值中包含 符号 例如 string value This That Response Redirect http www example com Value Server Url
  • 看起来很有趣的评论 - C++

    当我阅读开源项目的源文件时 我经常在评论中遇到一些奇怪的短语 brief usage remarks par 问题1 它们是什么 我学c 的时候没有提到 2 他们有任何文件吗 在哪里 它们只是注释 因此在 C 中没有特殊含义 他们可能允许文
  • 需要在MongoDB中存储高精度十进制值

    我对 MongoDB 的经验很少 我通常从事大型 SQL Server 数据库的工作 MongoDB 仅支持 double 和没有小数 C 驱动程序将小数序列化为字符串 如果我将小数存储为字符串 我会错过什么功能 MongoDB 有没有办法
  • 显示隐藏的 WPF 窗口

    在 WPF 窗口中我想隐藏它 使用显示另一个窗口ShowDialog然后取消隐藏第一个窗口 当我这样做时 this Hide var window2 new Window2 window2 ShowDialog this Show 第一个窗
  • 如何从在线 UML 模型生成 Java?

    我需要在线创建 UML 类图并从中生成 Java 代码 像 cacoo 这样的绘图工具不允许生成代码 因为它们不是真正的 UML 建模器 有人知道生成 Java 代码的 UML 在线工具吗 谢谢你的帮助 你应该看看 GenMyModelUM
  • 解决类似 Flood-It 难题的最少点击次数

    我有 N M 网格 其中每个单元格都用一种颜色着色 当玩家单击颜色为 的网格中的任何单元格时 颜色为 的网格左上角的单元格将接收颜色 但不仅如此 所有通过以下方式连接到源的单元格仅使用颜色 或 的路径也会接收颜色 单元之间的连接应仅在水平和
  • 在dos批处理脚本中检测sqlplus错误?

    我们有以下批处理脚本 echo release sql echo exit sqlplus x y orcl if errorlevel gtr 1 goto dberror 问题是 声明if errorlevel gtr 1当出现 sql
  • ASP.NET MVC 语言更改链接

    我有一个 ASP NET MVC 站点 它使用资源以两种语言显示 为了允许服务器以适当的语言显示站点 取决于用户浏览器中配置的语言 我将以下内容放入 web config 中
  • 为什么使用 HTML5 语义标签而不是 div? [复制]

    这个问题在这里已经有答案了 为什么使用 HTML5 语义标签headers section nav and article而不是简单地div与首选的css to it 我创建了一个网页并使用了这些标签 但它们与div 他们的主要目的是什么
  • 当 python 文件必须使用 #!/bin/env python 时处理多个 python 版本

    我有这个问题 System A运行 Ubuntu 并需要Python 2 6对于一堆不同的事情 我安装了Python 2 7分别于System A System B has Python 2 7原生地 我有一个 python 脚本BLAH其
  • OSGI 缺少需求错误

    我是 OSGI 新手 我正在尝试弄清楚如何解决如下错误 org osgi framework BundleException 捆绑包 org foo serviceBundle 253 中未解决的约束 无法解析 253 0 缺少需求 253
  • 如何阻止 SwiftUI 选择器对其可见区域之外的触摸做出反应?

    我在视图中有一个选择器 我希望将其限制为定义的高度和宽度 虽然下面的代码在视觉上实现了这一点 但选择器响应其区域之外的点击操作 在某些情况下 响应点击附近的按钮 就像我点击将选择器滚动到其值的开头或结尾一样 按钮不会响应点击 选择器会响应
  • MultinomialNB 错误:“未知标签类型”

    我有两个 numpy 数组 X train 和 Y train 其中第一个维度 700 1000 由值 0 1 2 3 4 和 10 填充 第二个维度 700 由值填充值 新鲜 或 腐烂 因为我正在使用烂番茄的 API 由于某种原因 当我执
  • Entity Framework 7 中表和属性的名称不区分大小写

    我使用 Entity Framework 7 和 Npgsql 适配器 EF生成的Sql看起来像 SELECT r Id r Name FROM public Role AS r 它在 Postgres 中不起作用 因为区分大小写的策略 为
  • JavaScript 函数导入不起作用

    我正在尝试从单独的 js 文件导入函数 当我声明导入命令时 页面不执行代码 但是 当我删除导入命令并执行一个简单的警报 Hello 时 页面上会弹出该内容 项目结构 Todo 应用程序 js 两个 js main js index html
  • 有没有办法在 Javascript 中获取所有事件侦听器绑定?

    我正在寻找一种我可以的方法列出所有事件侦听器绑定是在网站上用 JS 或其他脚本 制作的 主要是我想找出双重绑定 出于调试原因 但我想它还有其他问题 杰出的将是浏览器的插件 您可以在网站上看到哪些元素具有哪些类型eventlisteners边
  • 使用 data.table 进行内存分析

    在包含调用的 R 代码中分析内存的正确方法是什么data table功能 假设我想确定表达式期间的最大内存使用量 该参考文献表明Rprofmem可能不是正确的选择 https cran r project org web packages
  • 组合向量和 data.frame 匹配列值和向量值

    I have vetor lt c 1 2 3 data lt data frame id c a b a c a 我需要一个将每个向量值与特定 id 相匹配的 data frame 输出 结果 id vector1 1 a 1 2 b 2
  • CGRect 和 CGPath 的交集

    有没有一种有效的方法来检测 CGPath 和 CGRect 是否相交 我考虑过循环遍历 CGRect 内的每个点 如下所示 for CGPoint point in rect if CGPathContainsPoint path nil