基本模型比较容易建立,但对于复杂造型的产品,必须学会利用曲面来造型。
如何利用Alias来造面?这是许多初学者所面临最棘手的问题,因此下面介绍一下曲面与曲线的关系。另外再详细介绍Alias曲线的相关功能与应用。
下面介绍Alias对曲线的名词定义,从绘制基本的曲线开始,才能逐渐创建出立体模型。
在Alias系统中,曲线是一个常见的几何对象,它扮演着十分重要的角色。它是一切曲面构建的基础,从曲面的生成角度来说,其自身的空间走向和平滑质量直接决定了最终曲面模型的质量。
在Alias中曲线分别有直线、弧线、抛物线、Bezier(贝赛尔)线、过渡线等,如图3-1所示。
图3-1 Alias曲线
根据数学公式定义,曲线可分为单一曲线和复合曲线两种,单一曲线是由2个数据点组成的,复合曲线则是由多个数据点组成的。如图3-2所示为曲线在空间表示的坐标方程式。
图3-2 曲线的空间坐标方程式
上面的方程式可用向量来表达,那么使用向量符号时,曲线的参数方程式就变成下面这样:
不规则的曲线可以使用多项式来表达。由于不规则的曲线数据点数非常多,而它的幂数会变得很大,那么曲线在计算过程中耗时容易造成不稳定,所以在实际工作中往往把它们分割成数段小的曲线,这些小线段称为曲线线段,每一小线段使用较低阶的多项式来近似就行了,最后完成时我们再把这些小线段两端连接起来即可。
NURBS 是用于 Alias 中进行建模的曲线和曲面表达法。NURBS 的含义是非统一均分有理性 B 样条曲线(Non-Uniform Rational B-Splines)。
●非统一均分是指曲线的参数化。
●有理指其内在的数学表示。
●B 样条曲线是采用参数表示法的分段多项式曲线。
根据曲线用途来分,Alias中常见的主要用来生成曲面的曲线分为3种:一般NURBS曲线、过渡曲线和关键点曲线,后两者是根据用途划分的特殊NURBS 曲线,比普通的NURBS 曲线记录了更多的信息和限定性条件。在一定条件下,它们是可以转化为普通的NURBS 曲线,所以在本质上它们是一样的。
Alias NURBS曲线通常包含以下元素:CV(Control Vertex,点)、Hull(外壳线)、EP(Edit Point,编辑点)、Degree(阶数)、Span(跨距)。
1.CV(Control Vertex,点)
除了曲线首尾的两点外,一般都是分布在曲线主体的两侧,它是调节曲线形状最基本最重要的手段。第一个CV点外形呈方块形,表示曲线的起点;第二个CV点外形是字母“U”,表示曲线的递增方向,即U方向,其他的CV点则是用小“X”表示,如图3-3所示。
图3-3 曲线的CV点
每个曲线的一个跨距始终有固定的 CV 点数量。CV点的数量等于曲线的阶数加上1。如阶数是 3 的曲线,每个跨距只有也只能有4个 CV点。
2.Hull( 外壳线)
为了显示曲线CV点的先后顺序关系,曲线上的各CV点依次连接成线,这便称为外壳线。在选择其中一个CV点时,连接它的外壳线会加亮显示以提供选择的反馈信息,如图3-4所示。
图3-4 外壳线
3.EP(Edit Point,编辑点)
EP(Edit Point,编辑点)位于曲线的主体之上,用来确定曲线上的跨距数,如图3-5所示。一条曲线最少含有两个EP点,即起始编辑点和终止编辑点。编辑点的存在主要是用来显示曲线的跨距数。
图3-5 编辑点
编辑点可以删除,以改变曲线的跨距数,但是这会改变曲线的形状。也可以在曲线的中间插入编辑点,从而添加更多的CV点,更好地控制曲线。
虽然也可以进行移动从而调整曲线的形状,但是一般不会这样做,因为Alias不会真正地移动编辑点本身,而是通过移动 CV来间接地改变曲线的形状,所以编辑点一直相对于曲线处于指定的位置。
4.Degree(阶数)
Degree(阶数)是曲线或曲面的数学特性,每条曲线的每个跨距CV 数量受曲线阶数的约束。
●一阶的曲线创建出来的是直线。
●可以用一个跨度的二阶的曲线创建出抛物线。
●三阶曲线是Alias中默认的曲线阶数。
●更高阶的曲线可以创建出更加平滑的曲线。
5.Span(跨距)
Span(跨距)反映着曲线的复杂程度,对于单跨距的曲线,阶数是一定的,曲线上的CV点也是固定的。对于多跨距的曲线来说,曲线上的CV点数量并不能简单地做加法,因为在Alias中绘制一条长的曲线时,Alias 实际是将多个曲线跨距接合在一起。上一个曲线跨距的最后一个 CV 成为下一个曲线跨距的第一个 CV,从而在曲线段之间产生了非常平滑的过渡。
在【Palette】工具箱中单击位于【Curves】工具标签下的【Blend curve toolbox】 图标,打开过渡曲线工具箱,如图3-6所示。
使用过渡曲线,可以通过指定曲线形状的约束来创建曲线。过渡曲线同样为NURBS曲线,只不过过渡曲线为确定曲线形状和操纵曲线提供了更高级并且更简单的方法,它会根据不同的约束来自动计算符合约束的曲线的形状。与普通NURBS曲线不同的是,过渡曲线是通过上面的过渡点来控制,如图3-7所示。
图3-7 过渡曲线
图3-6 过渡曲线工具箱
对过渡曲线可以设置多种约束条件:
●过渡曲线应通过空间中的哪些点。
●过渡曲线应与哪些曲面相切。
●过渡曲线应与哪些现有曲线相交。
●过渡曲线在某个点应沿着哪个方向行进。
过渡曲线的约束是通过对过渡点创建约束来实现的,所有过渡点的约束主要有以下3种类型。
●位置:强制过渡点通过空间中的位置(在最初放置过渡点时创建的默认约束类型)。
●方向:强制曲线通过过渡点在空间中的位置,并沿着特定的世界空间方向行进,它又有两个小的类型。
▲定向:设置曲线切线的实际方向。在过渡点处的特定切线方向非常重要时使用此类型。
▲平行:设置一条直线,曲线沿着该直线通过过渡点。此类型更容易实施并且可以获得更好的曲线连续性。
●几何体:强制曲线通过曲线或曲面上的某个点,并沿着相对于该曲线或曲面的某个方向行进。
这些关于过渡点曲线的解释有些难懂,需要在实际的操练中慢慢体会,能够熟练的应用过渡曲线,这会在创建复杂的模型、对曲面质量要求很高的模型中体现出很大的作为。
关键点曲线保留的信息要多于其他曲线。关键点曲线会记住关系和约束,并在用户编辑关键点曲线时应用这些关系和约束。它有一个工具箱,单击位于【Palette】工具箱中【Curves】工具标签下的【Keypoint Curve Toolbox】 (关键点工具箱)图标即可打开,如图3-8所示。
图3-8 关键点曲线工具箱
在创建一条关键点曲线之后,如需改变这条关键点曲线的参数(以改变圆弧的半径为例),可以在这条曲线处于选取的状态下,执行菜单栏中的【Windows】|【Information】|【Information Window】命令(快捷键为Ctrl+5),打开这条曲线的信息窗口,如图3-9所示。
图3-9 圆弧信息窗口
在【Attributes】属性栏下,可以在圆弧半径数值栏中输入精确的半径,在扫掠角度中输入精确的角度,从而创建符合要求的曲线。
连续性是对两个曲线或曲面相互连接情况的描述。连续性的级别越高,曲线或曲面的相互连接处就会越平滑。若要实现高级别的连续性的灵活性,可以增大曲线或曲面的阶数。
下面列出了 Alias 工具可能包含的5种连续性类型:G0~G4。其中 G3 和 G4 连续性只适用于过渡曲线。
●位置连续性(G0)
两条曲线的端点完全重合,如图3-10所示。
●切线连续性(G1)
在保持位置连续性的同时,两条曲线在公共端点处有相同的切线,看起来就是两条曲线在端点处向着同一方向行进,但是却有着不同的曲率变化率,如图3-11所示。
●曲率连续性(G2)
在保持切线连续性的同时,两条曲线在接合处有着相同的曲率,如图3-12所示。
●曲率变化率的连续性(G3)
保证曲率连续性的同时,曲率变化率也要相同,如图3-13所示。
图3-12 曲率连续性
图3-13 曲率变化率的连续性
●曲率变化率的连续性(G4),如图3-14所示。
图3-14 曲率变化率的连续性
如果这些名词不好理解,可以试着回忆一下相关的数学知识,就算不能理解也没有关系,只要能够明白连续性级别越高,曲线或曲面就会表现得更光滑,而在后面的讲解中会不停地熟悉、理解这些概念。