样条曲线是经过或接近影响曲线形状的一系列点的平滑曲线。
默认情况下,样条曲线是一系列 3 阶(也称为“三次”)多项式的过渡曲线段。这些曲线在技术上称为非均匀有理 B 样条 (NURBS),但为简便起见,称为样条曲线。三次样条曲线是最常用的,并模拟使用柔性条带手动创建的样条曲线,这些条带的形状由数据点处的权值塑造。
在以下样例中,样条曲线用于创建混凝土人行道的亮显边界。
了解控制顶点和拟合点
可以使用控制点或拟合点创建或编辑样条曲线。左侧的样条曲线将沿着控制多边形显示控制顶点,而右侧的样条曲线显示拟合点。
在选定样条曲线上使用三角形夹点可在显示控制顶点和显示拟合点之间进行切换。您可以使用圆形、方形夹点以修改选定的样条曲线。
重要: 将显示从控制点切换为拟合点会自动将选定样条曲线更改为 3 阶。最初使用更高阶数表达式创建的样条曲线可能因此更改形状。
使用拟合点创建样条曲线
使用拟合点创建样条曲线时,生成的曲线通过指定的点,并受曲线中数学节点间距的影响。
您可以使用节点参数化选项选择这些节点的间距,这将导致示例中所示的不同曲线。
注: 对于所有情况,不存在节点参数化的最佳选择。弦长参数化常被使用,平方根(向心)参数化通常生成更好的曲线,具体取决于数据集。
在公差值设置为 0(零)时,样条曲线直接通过拟合点。使用较大的公差值,样条曲线将靠近拟合点。根据需要,也可以指定样条曲线在每个端点的切线方向。
注: 拟合点方法通常可以得到 3 阶样条曲线。
特殊情况
通过指定精确使用 3 个控制顶点创建的 2 阶样条曲线,可以创建具有抛物线形状的样条曲线,如左图所示。使用 4 个控制顶点创建的 3 阶样条曲线具有与 3 阶 Bezier 曲线相同的形状,如右图所示。
可以使用几种方法编辑样条曲线和修改其基本数学参数。
可以使用多功能夹点、SPLINEDIT 和“特性”选项板编辑样条曲线。除了这些操作,还可以修剪、延伸和圆角样条曲线。
使用多功能夹点编辑样条曲线
多功能夹点提供的选项包括添加控制点并在其端点更改样条曲线的切线方向。通过将光标悬停在夹点上,显示选项菜单。
使用多功能夹点编辑选项有所不同,具体取决于样条曲线是设置为显示控制点还是拟合点。左侧的样条曲线将显示控制顶点,右侧的显示拟合点。
要在显示控制顶点和显示拟合点之间进行切换,请单击三角形夹点。
重要: 从显示控制顶点切换到拟合点会将选定的样条曲线自动更改为 3 阶。最初使用更高阶数表达式创建的样条曲线可能会因而改变形状。
通常,与使用拟合点编辑样条曲线相比,使用控制顶点编辑样条曲线可以更好地控制曲线较小部分的重塑。
您可以将其他控制顶点插入样条曲线的某一部分,以更好地控制该部分,其代价是使样条曲线的形状更复杂。“优化”选项将节点添加到样条曲线,以使用两个控制顶点替换选定的控制顶点。
使用 SPLINEDIT 编辑样条曲线
SPLINEDIT 提供其他编辑选项,例如将扭折添加到样条曲线、将样条曲线合并到另一个连续的对象(例如直线、圆弧或其他样条曲线)。如图所示,对象被合并到具有 C0 连续性的样条曲线。
使用选项板编辑样条曲线
“特性”选项板提供对多个样条曲线参数和选项的访问,包括样条曲线的阶数、每个控制点的权值、结合拟合点使用的节点参数化方法以及样条曲线是否闭合。
修剪样条曲线可将其缩短,无需更改保留部分的形状。
圆角样条曲线会创建相切于样条曲线和其他选定对象的圆弧。可以使用线性部分延伸样条曲线以完成圆角操作。
多段线是作为单个对象创建的相互连接的序列直线段。可以创建直线段、圆弧段或两者的组合线段。
修改多段线
您可以使用多种方法更改多段线的形状和外观。
当您选择多段线时,您可以使用夹点移动、添加或删除单个顶点,然后在圆弧和直线段之间转换。
还可以将多段线转换为样条曲线拟合或曲线拟合多段线(pe命令,选拟合或样条曲线)。
注: 您可以将样条曲线拟合多段线转换为带有样条曲线命令(对象选项)的 B 样条曲线。
查找
使用 PEDIT 命令更改单个线段或整个多段线的宽度。
注: 用于修改多段线的许多选项也位于“特性”选项板上。
线型和多段线顶点
对于多段线,可以指定线型图案在每条多段线中是处于居中位置,还是连续跨越顶点。
使用 PLINEGEN 系统变量为新对象指定此选项。您可以在“线型生成”设置的“特性”选项板中更新现有多段线。
关于面域(快捷键 region union subtract INTERSECT)
面域是具有物理特性(例如,质心)的二维封闭区域。可以将现有面域合并到单个复杂面域。
面域可用于
- 提取设计信息
- 应用填充和着色
- 使用布尔操作将简单对象合并到更复杂的对象。
可以从形成闭环的对象创建面域。环可以是封闭某个区域的直线、多段线、圆、圆弧、椭圆、椭圆弧和样条曲线的组合。
可以通过合并、减去或相交面域来创建面域:
使用 UNION 组合的对象:
使用 SUBTRACT 组合的对象:
使用 INTERSECT 组合的对象:
无效边界
如果无法确定边界,可能是因为指定的内部点位于完全封闭区域外部。在下面的样例中,在未连接端点周围显示红色圆圈,以标识边界中的间隙。