Spline Library样条曲线生成工具
SplineLibrary 提供功能构建、校准,并评估不同类型的样条曲线。它实现了功能设计背后的花键,花键结构,定制,校准和评价各种花键类型和基础功能。
特征
- catmull-rom花键的插值
- 包括
spline_library/splines/uniform_cr_spline.h
,创建一个UniformCRSpline
对象,并调用其getPosition
方法。 - 其他几种样条线类型。有关完整列表,请参见样条类型。
- 包括
- 循环花键
- 也称为“周期”或“循环”:这些样条线形成一个循环,其结尾与开头相连
- 用超出范围的T值调用getPosition(t)将“环绕”到样条线的另一端
- 要制作循环的catmull-rom样条曲线,请包含
spline_library/splines/uniform_cr_spline.h
并创建一个LoopingUniformCRSpline
对象。 - 每种样条曲线类型都有循环和非循环两种形式
- 计算样条曲线的弧长
- 调用样条线的totalLength()方法来查找整个样条线的弧长
- 调用样条曲线的arcLength(a,b)方法以找到两个任意T值之间的弧长
- 计算样条的逆
- 给定一个数据点(不一定在样条线上,甚至不靠近样条线),什么T值会使样条线最接近该数据点?
- 创建一个SplineInverter对象并调用其findClosestT方法
- 样条的一阶,二阶和三阶导数的计算
- 一阶导数称为“切线”-这是指插值位置每T改变的速度和方向
- 二阶导数称为“曲率”-这是插值切线每T改变的速度和方向
- 三阶导数称为“摆动”-这是指插值曲率以多快的速度向哪个方向变化
评论