您现在的位置是:首页 > 文章详情

《iOS 6核心开发手册(第4版)》——1.9节秘诀:平滑绘图

日期:2017-05-01点击:211

本节书摘来自异步社区《iOS 6核心开发手册(第4版)》一书中的第1章,第1.9节秘诀:平滑绘图,作者 【美】Erica Sadun,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.9 秘诀:平滑绘图
iOS 6核心开发手册(第4版)
依赖于使用的设备和涉及的并发处理数量,捕获用户姿势可能产生比想要的更粗糙的结果。触摸事件通常受CPU要求以及握手协议限制。平滑算法可能通过在点之间进行插补操作来抵消这些限制。图1-4演示了由粒状输入导致的棱角类型,以及可代之以应用的平滑效果。


71a598a49fa897d4bf5f1c16765cd7d38079ae5a

图1-4 可以实时应用Catmull-Rom平滑,改进触摸事件之间的弧度。
这里显示的图像基于完全相同的姿势输入,其中分别显示了应用和未应用平滑两种效果

Catmull-Rom样条插值在关键点之间创建连续的曲线。该算法确保所提供的每个初始点都仍然是最终曲线的一部分,得到的路径将保持原始路径的形状。可以选择在每一对参考点之间插入点的数量,需要在处理能力与更好的平滑效果之间进行折衷。添加的点越多,消耗的CPU资源也越多。在使用本章附带的示例代码时可以看到,一点点的平滑都要经历较长的时间,甚至在更新的设备上也是如此。最新的iPad的响应速度是如此之快,以至于它很难在一开始就绘制出锯齿状特别突出的线条。

秘诀1-8演示了如何从现有的贝塞尔曲线路径中提取点,然后应用样条插值,创建平滑的结果。Catmull-Rom一次使用4个点,使用在那些点之间指定的粒度,计算第二个点和第三个点之间的中间值。

秘诀1-8提供了一个示例,其中只显示了可能添加到应用程序中的一类实时的几何处理。可以用类似的方式应用计算几何领域中的许多其他的算法。


12ea7dee582817df45aa386d4aa5a193dca2928c


5cfed1ded831b421e741f1fdda07f6f4cd2287e7
原文链接:https://yq.aliyun.com/articles/98288
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章