spline_curve

样条曲线(spline curves)

所谓样条曲线(Spline Curves)是指给定一组控制点而得到一条曲线,曲线的大致形状由这些点予以控制,一般可分为插值样条和逼近样条两种,插值样条通常用于数字化绘图或动画的设计,逼近样条一般用来构造物体的表面。工程中,很多实际应用场景都需要制作平滑的面、线。这些面、线都是被相应的条件约束。把这些需求和约束抽象为数理模型就是样板曲线。

样条曲线是经过一系列给定点的光滑曲线。最初,样条曲线都是借助于物理样条得到的,放样员把富有弹性的细木条(或有机玻璃条),用压铁固定在曲线应该通过的给定型值点处,样条做自然弯曲所绘制出来的曲线就是样条曲线。样条曲线不仅通过各有序型值点,并且在各型值点处的一阶和二阶导数连续,也即该曲线具有连续的、曲率变化均匀的特点。

样条曲线(spline curves)的种类

常用的样条有许多种,由它们的特征命名。以下列出其中几种:

  • 01\] 按表达方式命名,如:非均匀有理 B 样条曲线(NURBS),又称为B样条(B-spline)。整个样条曲线是有每个基曲线的线性组合。每个曲线段的多项式由伯恩施坦多项式(Bernstein polynomial)表达。

  • 03\] 用特殊条件限定命名,如:自然样条、差值样条。若要求在a与b二次导数为零则称为自然样条(natural splines)。若要求样条曲线穿过实际数据点则称为插值样条(interpolating splines)

  • 01\] 样条曲线(spline curvers)是由一组逼近控制多边形的光滑参数曲线段构成,这些曲线段就是样条曲线段。控制多边形也叫特征多边形,其顶点即使控制点,只有在特殊情况下(次数为0、阶数为1),样条曲线才能通过控制点。

  • 03\] 阶数与次数有关,样条曲线的阶是其次数加一。阶数越高,控制点越多,阶数等于控制点数(此处的控制点为决定曲线段的控制点数目,不是整个样条曲线的、总的控制点数目)。二次样条的阶数是三,样条曲线段由三个控制点决定;三次样条的阶数是四,样条曲线段与四个控制点决定。

  • 05\] 允差是指样条曲线通过型值点的精确程度,允差越小,样条曲线与型值点越接近,允差为零,样条曲线将通过型值点

  1. 基函数:曲线段的描述函数。基函数不同,样条曲线种类不同。
  2. 次数:基函数的幂指数。
  3. 阶数:次数+1,决定一段曲线段的控制点数。
  4. 控制点:约束样条曲线的边界条件。
  5. 权值:靠近边界条件的阈值。
  6. 允差:满足限定条件的阈值。
  7. 形值点:约束样条曲线走向的限定条件。
  8. 节点:通过设定节点数n ,将样条曲线分割成n-1个曲线段。
相关推荐
那个村的李富贵8 小时前
CANN加速下的AIGC“即时翻译”:AI语音克隆与实时变声实战
人工智能·算法·aigc·cann
power 雀儿8 小时前
Scaled Dot-Product Attention 分数计算 C++
算法
琹箐8 小时前
最大堆和最小堆 实现思路
java·开发语言·算法
renhongxia19 小时前
如何基于知识图谱进行故障原因、事故原因推理,需要用到哪些算法
人工智能·深度学习·算法·机器学习·自然语言处理·transformer·知识图谱
坚持就完事了9 小时前
数据结构之树(Java实现)
java·算法
算法备案代理9 小时前
大模型备案与算法备案,企业该如何选择?
人工智能·算法·大模型·算法备案
赛姐在努力.9 小时前
【拓扑排序】-- 算法原理讲解,及实现拓扑排序,附赠热门例题
java·算法·图论
野犬寒鸦11 小时前
从零起步学习并发编程 || 第六章:ReentrantLock与synchronized 的辨析及运用
java·服务器·数据库·后端·学习·算法
霖霖总总11 小时前
[小技巧66]当自增主键耗尽:MySQL 主键溢出问题深度解析与雪花算法替代方案
mysql·算法
rainbow688911 小时前
深入解析C++STL:map与set底层奥秘
java·数据结构·算法