首页 > 解决方案 > 如何插入 NSBezierPath/UIBezierPath 并在位置检索正常向量?

问题描述

我有一个 NSBezierPath。我想以一种方式插入

interpolate (0) = starting point
interpolate (1) = end point
interpolate (0.5) = middlePoint. 

我还想要一个在该点提供法线向量的函数。

我在搜索过程中看到了很多拼图,但没有人能迅速提供完整的解决方案。关键问题是:

提前谢谢了!

标签: cocoacocoa-touchinterpolationuibezierpathnsbezierpath

解决方案


基本上,我使用了这个库:https ://github.com/louisdh/bezierpath-length/blob/master/Source/BezierPath%2BLength.swift

它给了我一个很好的 x 近似值,以便在一个小的变化后进行插值。有了那个 x 和这个解释:https ://medium.com/@adrian_cooney/bezier-interpolation-13b68563313a我能够找到法线向量(最后一个插值沿切线,所以我只需要最后一个正交向量插值)。

我的代码还是有点乱。我以后可能会发布。但它有效!


推荐阅读