gpt4 book ai didi

ios - 提高绘图性能(针对 Dudel 应用程序)

转载 作者:行者123 更新时间:2023-11-29 13:37:42 25 4
gpt4 key购买 nike

我需要创建一个小型绘图/绘画应用程序,所以我求助于 Beginning IPad Development for IPhone Developers: Mastering the IPad SDK By Jack Nutting, Dave Wooldridge, David Mark .

挺好看的。架构很强大。但是,绘图应用程序 (Dudel) 在性能方面并不是很好。有两个主要问题(目前对我而言):

  1. 最重要的是:绘图会在一段时间后变慢。原因:每次为所有路径调用 drawRect
  2. 使用铅笔工具绘图不流畅。原因:它使用 addLineToPoint: 而不是(可能是)addQuadCurveToPoint:
  3. 没有橡皮擦控件。但这真的不是问题,因为我们可以选择白色来绘画,给人一种橡皮擦的错觉。但是,如果有更好的实现方式,我很想知道。

问题:

是否有解决这些问题并提供简单但高效的绘图应用程序的解决方案?

注意:我还需要撤消/重做功能。

最佳答案

让我试着一一回答你的问题。

The drawing with Pencil tool isn't smooth. Reason: It's using addLineToPoint: instead of (may be) addQuadCurveToPoint:.

你说的是真的。IOS 设备在定义的时间间隔内查找触摸。如果你的手移动得很快,你很可能最终会失去几个接触点。因此,使用线连接点会导致丑陋的尖峰。

我们可以通过 curve fitting 平滑曲线algorithms.However 绘图中的一些调整可以导致质量的可衡量改进。 Here就是一个例子。

Eraser control

如果您知道背景颜色,您可以将其用作画笔颜色以提供橡皮擦般的感觉。如果你不知道你可以使用的背景

CGContextSetBlendMode(context, kCGBlendModeClear);

Undo/Redo

你可以使用NSUndoManager .

关于ios - 提高绘图性能(针对 Dudel 应用程序),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10071804/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com