Blender2.5x-2.6完全教程 3.5.1

来自Ubuntu中文
Yq-ysy留言 | 贡献2012年8月25日 (六) 10:29的版本 →‎第 3.5.1 节 顶点和棱线的滑移 (slide)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳到导航跳到搜索

第 3.5.1 节 顶点和棱线的滑移 (slide)

Vertex Slide 顶点滑移——

  在Edit编辑模式下,View视图下方的Mesh菜单里,Face基面子菜单中,有一个Vertex Slide顶点滑移命令(快捷键 Shift V),其作用是将一个顶点沿着其所在的棱线滑移。如果选中了多个顶点,则该命令只对最后选中的活动顶点有效。在执行Vertex Slide顶点滑移命令时,首先需要用鼠标选择沿着哪一条棱线进行滑移,被选中的棱线呈明亮的桔黄色显示,选中后点击鼠标左键确定。View下方原本的标题按钮栏会变成状态栏,其中显示的数据 Vertex Slide: 0.000000 表示的是相对于棱线长度的滑移比例系数(可惜不能直接输入精确的数值)。0是在原位,0.5则是把顶点滑移到棱线的中点,1则会把顶点刚好滑移到棱线的另一端,2则是把顶点滑移到2倍于棱线长度的地方,如果是负数则是反方向滑移。在滑移的过程中,按下Shift键可以自动吸附捕捉到棱线的中点,按下Alt键或者Ctrl键则可以吸附捕捉到棱线的端点。点击鼠标左键确定完成滑移操作,点击鼠标右键取消操作。

Edge Slide 棱线滑移——

  在Edit编辑模式下,View视图下方的Mesh菜单里,Edge棱线子菜单中,有一个Edge Slide棱线滑移命令,其作用是Slide an edge loop along a mesh 将己选中的围选棱线沿着一个网格面滑移。注意:只有处在2个相邻基面之间的棱线才能使用Edge Slide棱线滑移命令。不能对单独的一个基面上的棱线使用Edge Slide棱线滑移命令,也不能对3个或更多基面共用的那条棱线使用Edge Slide棱线滑移命令。在立方体里,每一条棱线的一头都连接着2条棱线,两端共连接着4条棱线,如果只选中了一条棱线执行Edge Slide棱线滑移,则这条棱线将会沿着其两端的棱线滑移,如果两端的棱线不平行,被选中的棱线在滑移的过程中长度和倾斜角度也会相应发生变化。如果选中了多条棱线,而且这些棱线有直接相关的联系的话,则在滑移时彼此会发生持续性的相互影响。

  从Blender 2.64版开始,Edge Slide棱线滑移增加了一个新的功能,就是使围选的一组棱线,在滑移时可以按下E键启用逐渐均匀分布的滑移,按下F键可以翻转均匀滑移的方向。这个功能和Loop Cut 环切中的均匀切割类似(请参考第 3.4.5 节)。

Edge slide 棱线滑移
执行时 状态栏
输入数字 0.00 (-1~1) Factor 参数因子 执行后可在左侧Tool Shelf工具栏下方调节
E Even: On/Off 均匀滑移:开/关
F Flipped: On/Off 翻转:开/关

  • View视图里默认已有并已选中Cube立方体 ⇒ X 删除,回车确认 ⇒ Shift A 添加 ⇒ Mesh 网格物体 ⇒ UV Sphere 经纬球 ⇒ Tab 切换到编辑模式 ⇒ A 全不选 ⇒ 按着Alt键不放,鼠标右键点击经纬球上的一条纵向棱线,即Loop围选了半圈经线(请参考第 3.2.2 节) ⇒ 按着Shift键不放,在已选中的棱线中,用鼠标右键点击经纬球最顶端的那条棱线,取消其选中状态 ⇒ 按着鼠标中键,移动鼠标旋转View视图查看经纬球的底部 ⇒ 同样地按着Shift键不放,在已选中的棱线中,用鼠标右键点击经纬球最底端的那条棱线,取消其选中状态 ⇒ Ctrl E 打开Edge棱线子菜单 ⇒ 选择Edge slide棱线滑移 ⇒ 按E键,可以看到经纬球上出现了一条黄色的指示棱线,其中一端还有一个红点(注意:根据观察视角的不同,黄色指示棱线的位置会有所不同),有红色圆点的那一端,棱线的长度都相等(除了顶端特别短的棱线之外) ⇒ 移动鼠标,可以看到棱线是在黄色指示棱线内滑移,靠近经纬球两端的地方没有红色圆点的那一端滑移后间距较大,靠近经纬球赤道的地方没有红色圆点的那一端滑移后的间距较小 ⇒ 按F键,可以看到红色圆点跳到了棱线的另一端,有红色圆点的那一端,棱线的长度都相等(除了顶端特别短的棱线之外) ⇒ 输入0.5,可以看到这半圈Loop围选的棱线整体向一侧滑移了一半 ⇒ 回车或点击鼠标左键确定。

如何让一条棱线与球体相切——

  这个例子与“顶点和棱线的滑移”无关,只是利用之前已经掌握的知识和技巧,讨论一下如何在三维空间中做出一条与球体相切的Tangent切线。已知这个物体有2个Mesh部分,一个部分是UV Sphere经纬球,另一个部分是一条棱线。注意:物体的Origin原点不一定处在任何Mesh网格部分之内。所以,不要想当然地认为物体的原点就在经纬球中心。现在要求让这条棱线与经纬球相切。解决的这问题的关键是:在经纬球上找到这个Tangent Point切点,而这个切点必定处在通过球心且垂直于这条棱线的直线上。由此可以分为以下几步实现:

  • (1)创建一个平面,让球心和棱线都处在这同一个平面内;
  • (2)在这个平面内,创建一条既通过球心,而且又与棱线垂直的直线;
  • (3)在这条直线上,找到刚好与球面相交的那个顶点,这就是切点;
  • (4)把已知的棱线平行移动到切点上,就实现了棱线与球体相切。

  • (1)已有一个UV Sphere经纬球和一条Edge棱线 ⇒ A 全不选 ⇒ 按着Ctrl键不放,鼠标左键在View视图空白处点击一下,创建一个新的Vertex顶点(请参考第 3.5.2 节) ⇒ 鼠标右键点击选中经纬球上的一个顶点 ⇒ Ctrl L 选取连接点,可以看到整个经纬球被选中了(请参考第 3.2.1 节) ⇒ Shift S 吸附捕捉 ⇒ 在弹出的菜单中选择Cursor to Selected吸附捕捉游标移动到已选中物体的共同中心点上(请参考第 3.2.2 节)  ⇒ 鼠标右键点击选中刚才新键的Vertex顶点 ⇒ Shift S 吸附捕捉 ⇒ 在弹出的菜单中选择Selection to Cursor吸附捕捉已选中的元素移动到游标上,现在新顶点已经处于球体的中心,且仍是被选中的状态 ⇒ 按着Shift键不放,鼠标右键点击选中已知棱线的一个顶点 ⇒ F 创建棱线(请参考第 3.3.2 节) ⇒ 按着Shift键不放,鼠标左键点击View视图下方菜单按钮栏上的Edge select棱线选取按钮(请参考第 3.1.2 节),现在顶点选取和棱线选取两个按钮都是深色的选中状态 ⇒ 按着Shift键不放,鼠标右键点击选中才新创建的棱线和和已知棱线共2条棱线 ⇒ F 创建基面(请参考第 3.3.3 节),现在这个新创建的三角形Face基面已经把已知球体的球心和已知棱线包含了在内。
  • (2)继续上例,为了便于操作,我们需要先把经纬球线隐藏起来 ⇒ 鼠标右键点击选中经纬球上的一个顶点 ⇒ Ctrl L 选取连接点,可以看到整个经纬球被选中了 ⇒ H 隐藏已选中的元素(请参考第 2.2.1 节),现在经纬球被隐藏起来看不见了 ⇒ 鼠标右键点击选中已知棱线 ⇒ Shift D 复制,Esc取消移动,保持在原位置 ⇒ Alt Spacebar(空格)切换导向基准 ⇒ 在弹出的Orientation导向基准菜单中选择Normal法线(请参考第 2.2.3 节) ⇒ R Y Y 90 把新棱线按与自己的法线相垂直的方向旋转90°(也可以用 R X X 90),但旋转后的棱线不一定仍处在三角形Face基面内 ⇒ 鼠标右键点击选中已知棱线 ⇒ Ctrl Alt Spacebar(空格)创建一个新的自定义导向基准 ⇒ 可以把新的导向基准命名为V-Edge,并选中这个新的导向基准(请参考第 2.2.3 节) ⇒ Shift Tab 开启吸附捕捉(请参考第 3.1.4 节) ⇒ Shift Ctrl Tab 弹出吸附捕捉元素菜单,选择Vertex顶点 ⇒ 在3D View视图下方的菜单按钮栏里,Snap Target吸附捕捉目标菜单默认是Closest最近点 ⇒ 鼠标右键点击选中新复制的垂直棱线 ⇒ R Z Z 垂直于已知棱线旋转新棱线,把鼠标放在靠近球心顶点的位置,出现一个小圆圈,点击鼠标左键确定 ⇒ G 移动,把鼠标放在靠近球心顶点的位置,出现一个小圆圈,点击鼠标左键确定 ⇒ 按着鼠标中键旋转视图观察,不论是在三角形基面的上面还是下面,都可以看到这条垂直棱线,因此可以证明,这条垂直棱线是刚好处在三角形基面内,且与已知棱线垂直,并且现在新棱线的一个顶点正处于球心所在的位置上。

  现在已经有了经过球心且与已知棱线相垂直的垂直棱线,要想确定切点的位置,有2个方法,一是开启吸附捕捉球体的Volume体积,沿着新棱线移动新棱线上的顶点,让顶点停留在球体表面。但是这个方法操作时不容易控制鼠标在球面上的位置,造成定位不准确,出现偏差。而且吸附捕捉也不能用于顶点滑移,只能使用沿着棱线移动顶点的办法(请参考第 3.3.1 节),要放大显示多次操作才能准确定位,比较麻烦。这个方法还有一个小小缺陷,就是当经纬球解析度的不高、Subdivide细分的基面数量较少时,由于球体顶点是最高点,球体的基面其他位置都比球体的顶点要低,所以吸附捕捉球体的Volume体积时,如果定最终切点定位在球体的某一个基面内,并且使用了Smooth光滑显影模式的话,这条切线有可能会看起来“陷入”了球体表面,或者说看上去像是“穿过”了球体表面。另一个方法,就是先在球体内创建一条半径棱线,然后旋转“半径棱线”与“垂直棱线”重合,这样半径棱线的端点就是切点了。这个方法相对容易控制,但有这个方法的缺陷与前一方法刚好相反,就是当经纬球解析度的不高、Subdivide细分的基面数量较少时,并且使用了Flat平直显影模式时,如果定最终切点位没有定在球体的某个顶点上,而是定位在球体的某一个基面中间,这条切线有可能会看起来稍稍离开了球体的表面一点点。但如果所要求不高,这两种方法的一点点误差是可以忽略不计的。

  • (3)继续上例,鼠标放在View视图内 ⇒ Alt H 恢复显示被设置标志隐藏的元素,经纬球又重新出现了 ⇒ 鼠标右键点击选中经纬球上的一个顶点 ⇒ 按着Shift键不放,鼠标右键点击选中垂直棱线,再点击一次垂直棱线上处于球体外的那个端点,现在就只选中了处于球心位置的顶点和球体表面的一个顶点,共两个顶点 ⇒ F 创建棱线,这条棱线就是球体的一条半径 ⇒ 鼠标右键点击选中经纬球上的一个顶点 ⇒ Ctrl L 选取连接点,可以看到整个经纬球被选中了 ⇒ H 隐藏已选中的元素,现在经纬球又被隐藏起来看不见了 ⇒ 鼠标右键点击选中半径棱线 ⇒ Ctrl V 弹出顶点子菜单 ⇒ Y 分离顶点(请参考第 3.4.1 节) ⇒ 在3D View视图下方的菜单按钮栏里,Snap Target吸附捕捉目标菜单中选择Median数学中间点  ⇒ G 移动,把鼠标放在靠近球心顶点的位置,出现一个小圆圈,按A键做一个标记,把鼠标放在垂直棱线的另一端,又出现一个小圆圈,点击鼠标左键确定,现在半径棱线被放在了垂直棱线的中央(请参考第 3.3.1 节) ⇒ 半径棱线被移动后,有可能处于三角形基面的后面看不到 ⇒ 鼠标右键点击选中垂直棱线 ⇒ Ctrl Alt Spacebar(空格)创建一个新的自定义导向基准 ⇒ 可以把新的导向基准命名为H-Edge,并选中这个新的导向基准 ⇒ 快捷键 .(点号)以3D游标的位址为Pivot Point枢轴点 ⇒ 鼠标右键点击选中半径棱线 ⇒ R X X 把鼠标放在靠近球心顶点的位置,出现一个小圆圈,点击鼠标左键确定 ⇒ R Y Y 把鼠标放在靠近球心顶点的位置,出现一个小圆圈,点击鼠标左键确定,现在半径棱线与垂直棱线完全重合了(请参考第 3.3.2 节) ⇒ 在3D View视图下方的菜单按钮栏里,Snap Target吸附捕捉目标菜单中选择Closest最近点 ⇒ G Z Z 沿着垂直棱线的法线移动, 把鼠标放在靠近球心顶点的位置,出现一个小圆圈,点击鼠标左键确定,现在半径棱线的一端处在球心的位置,而且半径棱线与垂直棱线完全重合,因此半径棱线的另一端顶点就是我们需要找到的Tangent Point切点。
  • (4)继续上例 ⇒ 鼠标右键点击选中已知棱线 ⇒ Shift D 复制,把鼠标放在靠近切点的位置,出现一个小圆圈,点击鼠标左键确定 ⇒ Alt H 恢复显示被设置标志隐藏的元素,经纬球又重新出现了 ⇒ 按着鼠标中键旋转视图观察,可以看到,现在这条新棱线就是平行于已知棱线且与球体相切的切线。

  以上方法是完全按数学几何原理来操作的,感觉比较麻烦。在实际应用中其实有更简单快捷的方法,就是使用“表面投射”功能,也可以让一条棱线或者一个平面与球体或圆柱体相切(请参考第 3.5.5 节)。

— 返回目录 —