一、圆柱上的建消面 首先,画一个圆柱曲面。 如下图,画三条线,之后按曲线分离曲面。 剪切后面的控制点跟圆柱相同,所以必须收缩,把曲面上的控制点范围缩小到边界附近,这样拉点做造型就比较容易。 收缩有几个重点,这里讲下。 第一,只对剪切面有效果。因为剪切后曲面变小了,不需要这么大范围控制点。 第二,曲面上的控制点范围缩小到边界附近; 第三,曲面不必要得控制点会被简化; 第四,形状维持不变形。当然曲面会有形变,但属极小的变形,几乎可以被忽略; 第五,模型只会简化,不会变复杂。 第六,收缩后不可复原,所以最好先备份。 没收缩前,我拉点时很难直观的控制曲面变形位置。收缩后,曲面上的控制点范围缩小到边界附近,我拉点的位置几乎就是曲面的位置,如下图。 收缩有两种:一种是紧缩ShrinkTrimmedSrf,一种是留边缩ShrinkTrimmedSrfToEdge。上面最后一张图是紧缩。区别自己看Help。 缩完之后你会看到,如下图的控制点分布。 黄色边位置有连续性。因为本来就是圆柱的一部分,这种连续性 至少G2,如果是1span至少G3。同一个面被切割开来后的连续性被视为绝对连续,因为误差值在小数点后10位数。 接下来要用ChangeDegree命令改变曲面的阶数。 New U degree <2> ( Deformable=No ): New V degree <1> ( Deformable=No ): 3 改变阶数之前说过了,造型不变,而且我改变的是垂直向的阶数。为了是让他增加控制点,还有可弯曲,原来一阶是直线 接下来要对此处做出断差 向管内移动,如果要保持G2,靠近边界数起三排点不能动,G1 就两排控制点不能动。这是直管,垂直向是一阶。所以保持g1平滑度就足够了,一阶相当于直线,在“兵法--连续性曲面”那节课中讲了直线连续含意了,这里就不重复了。 因此拉成如下图这样。 接下来,有三种作法补这个面。 第一种,BlendSrf。 这种方式补出来的曲面,优点是平滑;缺点是不能渐消出自己想要的断面。 第二种,SW2加入截面线来控制形态。把现有的两个面Join起来,执行SW2 先选路径,后选断面。 有两个短边当断面。 选完后你会跳出如下对话框。 A、B连续性没法选,把短边抽出曲线来看,三个控制点而已。G1至少需要4个控制点,G2至少6个。这跟阶数无关,只要3阶就足够,2阶都行,但点数要够。 因此,SW2时只要选择重建成6排控制点就行。这样就可以选G2了。 这样做出来的效果比BlendSrf差些,但不容易比较出来。BlendSrf好,是因为生成的曲面为5阶面,更顺。但这种渐消面,就是要有锐利的感觉。要建议选择SW2。 用SW2再来看一个应用。对曲面边做曲线Blend Curve,就是blend命令按右键。 我们都知道Blend出来的曲线是6个控制点的,重建它成11个点来进行编辑。 这样的面BlendSrf 就不能做了。 第三种,NW网格面。 网格建面也可以,但缺点是不够精确。要精确ISO就会密密麻麻的。SW2的逼近比 Network 精确和精简许多。 以上这是最简单的渐消面,从中了解原理,其它难的也就迎刃而解了。 再来说个斜的,非ISO的走向。这就麻烦了,怎拉点都不对。 同样以一个管子为例。 为了方便练习,我们用半个圆管。 这次从正面下手,绘制如下图的曲线。照旧按曲线分离曲面。 还记得收缩吧,现在就对剪切出来的曲面执行收缩命令,把控制点缩回。 接下来需要升阶,升成5阶的1Span。你会发现控制点成下图这样。 New U degree <2> ( Deformable=No ): 5 New V degree <1> ( Deformable=No ): 5 这样的控制点如何维持黄色边连续性?黄色控制点都在黄线以外,前面我们说过控制点维持三排就保持G2连续,维持2排就G1,维持1排就G0。但是现在是斜的,算法就不一样了。 黄线以左的控制点不算,最靠近黄线的第一排点是我现在标出来的点,但是并不代表这排点不动。 拖动其他点来试验一下,看看会不会有裂缝。 拉完之后,你会发现列开了。再往右上数一个控制点。 这裂缝肉眼看不见了。用测量工具检测结果Maximum deviation = 0.461206,已经超出公差范围,连join都不行。降低公差虽然可以Join,但很不负责任。边界不合就是不连续,连G0都不是。 这里告诉各位一个很重要原因,1Span曲线,只要有一个控制点不在同一直线上,那条线就不会有直线的区段,也就是不可能没有曲率半径。只有直线是没有曲率半径的。 回过来看,刚刚我们这个面已经升阶成了5阶的1Span。 下面,我们先看看简单的作法,前面那个面先放一边去了。 先画一条线,如下图的红线。3阶5个控制点。 画一条线,投影到柱面,Match G2。 另外复制出两条曲线稍微整一下。 Loft出一个面。 MatchSrf匹配两曲面。 用原来的红色曲线剪切Loft出来的曲面。
|