INS*_*INS 7 language-agnostic algorithm spline computational-geometry
我在mathoverflow上发布了这个问题,但我想知道你对此的看法.我想要做的是绘制一条曲线,该曲线始终与给定曲线的法线相距一定距离.我知道给定曲线的公式(分段三次样条).问题似乎是当偏差距离大于曲线半径时 - 这些点会被扰乱.有谁遇到过这样的问题.有一个很好的解决方案吗?
谢谢你的任何想法,
尤利安
后来:巫师先生在下面详细描述了这个问题.
我认为你的定义会遇到麻烦:"......绘制一条曲线,该曲线始终与给定曲线的法线相距一定距离."
如果在凹曲线内绘制一系列线条,则在某些点处线条将自身折回,最终创建几何反转.
应用于椭圆,例如:
编辑:注意:这个答案并不是要避免拐角(这是严格等距曲线的一个特征)。
\n\n根据维基百科,
\n\n\n\n\n与给定 B\xc3\xa9zier 曲线有固定偏移的曲线,通常称为偏移曲线(与原始曲线“平行”,就像铁轨中钢轨之间的偏移),不能完全由 B\ xc3\xa9zier 曲线(除了一些微不足道的情况)。然而,有一些启发式方法通常可以为实际目的提供足够的近似值。
\n
因此,您必须使用启发式方法来获得近似值。有一篇学术论文名为“比较偏移曲线近似方法”,其中包括 9 种算法的比较。
\n\n如果您想跳过研究而只获得解决方案,请查看这篇描述De Casteljau 算法实现的博客文章。编辑:我必须承认,我不确定这个实现在急转弯时的表现如何。
\n