如何从 UIBezierPath 生成 CGPoint-Array(沿给定路径触摸滑动对象)[重复]

2023-12-02

我有一个 UIBezierPath(像“8”一样弯曲,其中只有 4 个点),我需要用它制作某种 CGPoint 数组。有任何想法吗?谢谢!

edit:

我的贝塞尔曲线是这样初始化的

-(void) initBezier
{
    theBezierPath = [UIBezierPath bezierPath];    
    [theBezierPath moveToPoint:P(211.00, 31.00)];
    [theBezierPath addCurveToPoint:P(870.00, 191.00) controlPoint1:P(432.00, -11.00) controlPoint2:P(593.00, 209.00)];
    [theBezierPath addCurveToPoint:P(731.00, 28.00) controlPoint1:P(1061.95, 178.53) controlPoint2:P(944.69, 5.78)];
    [theBezierPath addCurveToPoint:P(189.00, 190.00) controlPoint1:P(529.00, 49.00) controlPoint2:P(450.00, 189.00)];
    [theBezierPath addCurveToPoint:P(211.00, 31.00) controlPoint1:P(-33.01, 190.85) controlPoint2:P(71.00, 37.00)];
}

我用它来动画一个对象

anim = [CAKeyframeAnimation animationWithKeyPath:@"emitterPosition"];
anim.path = theBezierPath.CGPath;
anim.calculationMode = kCAAnimationCubicPaced;
anim.repeatCount = HUGE_VALF;
anim.duration = tme;

我想逐像素地为路径上的对象设置动画(通过触摸位置)。我希望对象将给定的触摸坐标“捕捉”到曲线上最近的点,以便它沿着路径触摸滑动对象。


Use the CGPathApply()函数迭代路径中的所有元素。作为参数之一,您必须指定一个指向函数的指针,然后为每个路径元素调用该函数。路径元素数据结构(类型CGPathElement) 然后包含描述它的点。

Use NSValue作为包装器将点添加到NSMutableArray.

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

如何从 UIBezierPath 生成 CGPoint-Array(沿给定路径触摸滑动对象)[重复] 的相关文章

  • UICollectionView 快速粘性标题

    我正在尝试创建一个粘性补充标题 它始终保持在顶部并且不会响应滚动事件 到目前为止 我发现的解决方案仍然对弹跳滚动做出反应 并使用自定义 flowLayout 进行修复 这也可能是我的问题的修复 我想要这种方式的原因是标头在其他地方使用并且应
  • UICollectionView 上的 UIRefreshControl 仅当集合填充容器的高度时才起作用

    我正在尝试添加一个UIRefreshControl to a UICollectionView 但问题是 除非集合视图填满其父容器的高度 否则刷新控件不会出现 换句话说 除非集合视图足够长需要滚动 否则无法将其下拉以显示刷新控制视图 一旦集
  • UIButton 不响应 UITableViewCell 中的单击事件

    ios 中有一个黑暗巫术阻止我的按钮被点击 如果我不向 uitableviewcell 添加按钮 并且单击该按钮 则会触发该事件 但如果按钮在 uitableviewcell 中 它不会被触发 看起来表 我已经准备好了示例代码 如果你们可以
  • 对象序列化 - 从 C# 或 java 到 Objective C

    服务器端 C 或 java 客户端 Objective C 我需要一种在 C java 中序列化对象并在 Objective C 中反序列化它的方法 我是 Objective C 的新手 我想知道从哪里可以获得有关此问题的信息 Thanks
  • 在单个 MTLRenderCommandEncoder 中使用多个渲染管道:如何同步 MTLBuffer?

    中心议题我在一个渲染命令编码器中有两个渲染管道 第一个管道写入第二个管道中使用的缓冲区 这似乎不起作用 我预计这是一个同步问题 当我为每个渲染管道使用一个单独的渲染命令编码器时 我得到了所需的结果 可以使用一个渲染命令编码器来解决这个问题
  • 使用 NSPredicate 来检测 NOT CONTAINS

    我放弃 我已经尝试了我能想象到的所有组合来检查一个字符串是否包含另一个字符串 这是描述我想要做的事情的直观语法示例 NSPredicate pPredicate NSPredicate predicateWithFormat NOT K C
  • 将箭头附加到 UIBezierPath

    我需要你的帮助 我正在尝试使用具有可变宽度的 UIBezierPaths 创建一个图形 并由带有两个控制点的贝塞尔曲线组成 现在我想在这些路径的末尾 右侧 添加箭头 有没有办法做到这一点 即通过附加一个包含三角形的较小线宽的子路径 这是我想
  • 设置单元格数据后如何更新 UICollectionView 中单元格的大小?

    所以我有一个 UICollectionView 每个单元格中都有不同大小的不同图像 当调用 cellForItemAtIndexPath 时 我使用一种方法更新 UICollectionViewCell 该方法在 Web 上异步获取图像并显
  • CGColorRef 导致崩溃

    我的代码发生了崩溃 并且我一直跟踪到在传递 2 个 CGColorRefs 时发生崩溃的行 以下是对象 CGColorRef startColor UIColor colorWithWhite 0 92 alpha 1 0 CGColor
  • 如何让 iPhone 发出蜂鸣声?

    什么代码可以让我在 iPhone 上发出标准的蜂鸣声 好吧 这取决于您想要什么样的声音 以下是如何使用 AVFoundation 音频框架播放声音 import
  • 推送通知中的设备令牌

    我只想向某些用户发送推送通知 根据我在苹果文档中所经历的内容 注册推送通知的代码是这样的 void applicationDidFinishLaunching UIApplication app other setup tasks here
  • 从方案加载 url 第一次未处理 - appdelegate 与 viewcontroller

    我的应用程序已成功打开并将参数 从 URL 方案 即 myApp sometextToPrint 设置为AppDelegate类 但每当我想处理它们时 当从该 URL 打开应用程序时 它就会在第一次失败 我在前台检查器中有一个应用程序 它调
  • 如何消除圆形矩形按钮周围的间隙而不删除其周围的边框? [复制]

    这个问题在这里已经有答案了 顺便提一句 这可能看起来像是关于按钮阴影问题的问题的重复 但它们有单调的背景 在我的例子中 背景是一些图像 所以简单的边框不能解决问题 While making app for iPhone Pad I noti
  • 如何从静态图像中读取二维码

    我知道你可以使用AVFoundation使用设备的摄像头扫描 QR 码 现在问题来了 我该如何从静态中做到这一点UIImage object Neimsz 的 Swift 4 版本answer https stackoverflow com
  • 如何在 xcode 中从 nib 文件创建视图?

    我有以下代码来创建视图并将其放入滚动视图中以允许分页代码工作正常 但是我不能做的是从 nib 文件加载视图 换句话说 我想使用 initWithNibName 而不是 initWithFrame void createPageWithCol
  • 如何查看iOS11屏幕录制是否开启?

    为了检测 iOS11 屏幕录制功能的开或关 我使用了 isCaptured 和 UIScreenCapturedDidChange 通知 当我第一次启动应用程序并在 iOS11 内置屏幕录制功能上时 它会通知选择器方法 值为 True 但是
  • Swift 中的 id 相当于什么?

    我有两个这样的代表 protocol MyFirstDelegate func change value int protocol MySecondDelegate weak var delegate MyFirstDelegate 这些协
  • 处理 iPhone X 系列上 Chrome 浏览器中的安全区域

    对于我管理的网站 我正在使用新的 iPhone X 系列屏幕安全区域safe area inset
  • 关于 NSApp 的 ModalForWindow、NSAlert 的 ModalForWindow 和 ModalSession 的提示 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我进行了大量的实验才消除了对 Obj
  • 将蒙版图像作为 PNG 文件写入磁盘

    基本上 我从网络服务器下载图像 然后将它们缓存到磁盘上 但在这样做之前 我想屏蔽它们 我正在使用每个人似乎都指出的屏蔽代码 可以在这里找到 http iosdevelopertips com cocoa how to mask an ima

随机推荐