[动图版] 地形生成器TopoShaper – 用等高线创建四边面地形

编著:韩涌(@微BIM布道者)

万丈高楼平地起,环艺设计都离不开地形,但现实中很多设计师并不重视处理环境,有些室内设计师甚至没把环境纳入设计考虑的范畴,这是极其错误的做法!当我们在室内透过窗户、幕墙能看到外部的环境,反之,外部的环境光也影响着室内的照明。这次《微BIM·渲染大师 / Thea三部曲》更新到“环境设计,用景别和景观营造氛围”,正好借此扩展一下环境中最基础的知识点——生成地形。

简介

用等高线生成三维地形并不是什么难事,SketchUp的沙盒工具提供了完整的解决方案。但是,今天要分享的工具——TopoShaper,它的关键词是“四边面”,这意味着用它生成的地形,有着非常规则的四边形网格(计算机图形学里也称为拓扑)。对于我这种有强迫症的设计师来说,让地形也规规矩矩的富有条理是非常重要的。

GIF动态图像·点击显示动态模式

使用流程:四步生成TopoShaper地形

GIF动态图像·点击显示动态模式

第1步 选择等高线

用TopoShaper生成三维地形,首先要准备好等高线,你可以先选择等高线,也可以激活TopoShaper的工具后,再选择等高线。


第2步 清理等高线

使用TopoShaper的一个“隐含”的优势就是这一步,在生成三维地形之前,可以非常智能的优化等高线,比如补齐残缺的等高线,简化等高线的分段,从选择集中移除(或增加)等高线。


第3步 计算和预览地形

同时显示2D图形和3D模型,在生成地形之前,预览最终的样子,可以修改四边面的网格大小以及决定如何处理山顶或盆地。


第4步 生成地形模型

生成三维地形的最后一步,会创建一个包含地形四边面网格模型的组,包括是否创建地形的“封边”和等高线。

安装和调用TopoShape

TopoShaper是Fredo6系列的一个插件,安装了【草图邦/工具箱】之后,可以随SketchUp一起启动,在工具栏右击可以显示它的工具栏。

TopoShaper包含两个模式,工具栏上有两个图标,一个用等高线生成规则四边面地形(QuadMesh from iso-contours),另一个用点云生成随机三角面地形(Triangular Mesh from a Cloud of Points)。

在主菜单 Tools > Fredo6 Collection > TopoShaper 或者关联菜单下也可以打开TopoShaper,功能跟使用工具栏图标一样。

界面参考

按钮面板

Contour Selection【选择等高线】

Cleansing Contours【清理等高线】

Calculation of Terrain and Preview【计算和预览地形】

Generation of Terrain geometry【生成地形模型】

通用按钮和动作

Fredo6 系列插件面板上的很多工具的作用是一样的,比如最左侧的几个工具,还有右侧的退出工具。

在TopoShaper的四个步骤的按钮面板中,Working View【工作视图】多次出现,它控制着SketchUp视口的模型显示,可以切换下面四种方式。

GIF动态图像·点击显示动态模式

Contour Selection【选择等高线】

TopoShaper选择等高线有两种模式,一种是预先选择边线、群组和组件(指内部包含边线的组);另一种是交互式选择边线。在实践应用中,用于生成地形的等高线通常会在一个群组(组件)里,我们也习惯先选择等高线,然后再调用TopoShaper。

生成新地形

选择包含地形边线的群组(或组件),TopoShaper将自动识别该组内第一级别的边线,会忽略组内的面和其它元素。

编辑已生成的地形

如果选择之前创建好的地形(用TopoShaper),会识别后自动进入步骤3:Calculation of Terrain and Preview【计算和预览地形】模式,可以重新修改步骤3、4中的选项,这是非常实用的功能。

交互式选择等高线

在TopoShaper生成三维地形的四个步骤中,第一步Contour Selection【选择等高线】的操作,新手可能会因为缺乏指导而感到头疼。的确,这一步可能会容易,也可能繁琐到令人沮丧!但是,这并不是TopoShaper自身的问题,而取决于你获得的原始地形资料。

下图展示的就是一个真实案例的地形素材,没有原始的等高线,已经做成了三维模型,虽然可以用TopoShaper直接提取模型中的等高线(会自动忽略表面),但结果惨不忍睹!所以,花点时间预处理等高线是必须的。

但不管情况如何,TopoShaper在处理线条的能力,依然是同类工具中的佼佼者。它提供的交互式选择线条法,是Fredo6系列插件统一的特色功能,为了帮助学习者更好的掌握其中的技巧,这部分专门对第一步Contour Selection【选择等高线】操作中的交互式选择线条,做更详细的说明。下面介绍的技巧,同样适用于Fredo6的 Curviloft和Curvizard。

交互式选择边线

TopoShaper可以通过下面几种方法选择边线:

  • 点击一条边线:一条或者多条边线将根据连续性和边线属性筛选器的设置进行选择。
GIF动态图像·点击显示动态模式
  • 点击一个表面:将自动选择面的边界(而不是孔)。
  • 点击一个顶点:选择连接到这个顶点的边。
  • 双击边线或表面:将选择与之相关联的所有边线。
  • 矩形框选模式:与AuotCAD和SketchUp的框选相同,从左至右框选是窗口模式,从右至左框选是交叉模式。
GIF动态图像·点击显示动态模式

还可以根据Edge Prop.【边线属性】下面的四个按钮对要选择的边线进行筛选,分别是【平坦/柔化/光滑/隐藏】。

如果要取消选择的边线,也将应用相同的规则,即:

  • 点击一条被选择的边线,将根据连续性和边线属性取消相邻的选择。
  • 点击一个表面将取消选择它的边界。
  • 双击将取消所有被选择的连续边线。

定义边线的序列(等高线)

TopoShaper自动按顺序将连续的边分为组,这将允许我们更好的操作等高线,在等高线上用数字直观地表示线段的序列,不同的序列用不同的颜色显示。

当两条边线或边线序列不相连时,TopoShaper认定是两条等高线(线段)。但如果它们之间有线段相连,而你又加选了它,原先的两端就会合并成一根完整的等高线。原理其实很简单,连续的线段被认定为一条。

GIF动态图像·点击显示动态模式

但是,如果你希望从单条连续的线段序列中,定义两个或多个线段。这就要“冻结”当前选择的边线,点击蓝色箭头图标(或按回车),冻结的轮廓显示为小钻石标签,如下图所示。

GIF动态图像·点击显示动态模式

一旦冻结后,被选择的线段会显示为彩色虚线,左侧端点处会出现一个操纵手柄,点击操纵手柄可以解除冻结,恢复为正常状态。

确认等高线

完成等高线的选择之后,就可以进行下一步的Cleansing Contours【清理等高线】了,你可以通过下面的方式来确认:

  • 点击光标附近的绿色✔符号;
  • 点击主按钮面板上的绿色Cleanse Contours按钮;
  • 按Enter键
  • 在视口的空白处单击;
  • 右击,在关联菜单中选择,如下图所示。

Cleansing Contours【清理等高线】

在大多数情况下,等高线是一个DWG文件,在另一个应用软件中创建并导入SketchUp的。如果是这样,大概率会出现非连续性、断开、短线头等问题,对于有大量顶点的线段,也可以自动简化。

清理等高线默认的工作视图是2D等高线图模式,你可以通过Working View【工作视图】切换为其它模式,比如仅SketchUp模式、3D等高线图、或两者同时显示。TopoShaper会清理甚至优化等高线,目前支持下面的清理功能:1. 排除指定的等高线;2. 简化轮廓线;3. 等高线末端的碎线(Small hools);4. 连接等高线(自动和手动)。

对于新手来说,读懂英文界面的信息比登天还难!我经常在想,专业设计师与普通设计师的区别到底在哪呢?不想说答案了,你学不学,都不影响我做出好的设计作品……在提示信息中,有一个固定的格式“当前数字[原数字]”。

公开课:如何使用TopoShaper生成三维地形


专业资料、翻译很辛苦!
您已免费阅读了50%的内容
付费19.9元阅读剩下50%的内容……


 [erphpdown]

选择和撤销选择

通过点击等高线,可以选择或取消选择等高线,被选择的等高线显示为蓝色,可以连续点击选择多条等高线,点击空白的地方则撤销选择。当等高线被选择时,在光标附近会显示一个小工具面板。

包含(排除)和简化(回复)

小工具面板包含两组功能,你可以控制是否包含或者排除被选择的等高线,还可以控制是否简化被选择的等高线。(注:绿色的等高线是简化后的,黑色是原始等高线。)

GIF动态图像·点击显示动态模式

清除碎线(Small Hooks)

从DWG导入等高线后,在一些等高线的末端经常会出现一些小的碎线,由于这些小线头通常都非常小,很难在视口中看到它们,所以,会显示为紫色。这些碎线头并不会有利于生成地形,因为它们比计算的网格分辨率小得多。你可以点击紫色的线段,决定在生成地形时是否包含(或者忽视),建议清除它们。

连接断开的等高线

从DWG导入的等高线并不一定都是连续的,可能存在很多断开的地方,TopoShaper非常擅长处理这样的问题。通常,它会用红色的线段连接这些断开的等高线,你也可以点击红色的线段,取消这种连接。或者,手动连接它们,只需要点击开口处的端点即可。非常完美的是,连接的线段会跟等高线保持切线关系,这样,线段看起来更平滑。

GIF动态图像·点击显示动态模式

编辑Z高度(海拔)

TopoShaper不仅可以根据已有的等高线生成三维地形,还可以重新编辑等高线的海拔高度(Z轴),这对于一些经常要处理场地地形的建筑师,以及景观设计师创建微地形是很有帮助的。

编辑高度的操作也很简单直观,你只需打开高度编辑器,设置参考高度和增量高度,然后点击等高线,即可指定该等高线的高度。注意,第一次点击等高线,默认为设置的参考高度,然后根据增量高度,按点击的次序依次增高,当前要增加的高度在面板中用红色边框显示。你也可以随时从面板中选择新的高度值(绿色底色的数值)。

GIF动态图像·点击显示动态模式

使用背景图像

三维地形通常要配合卫星图片,所以,TopoShaper还提供了使用背景图像功能,匹配地形与图像。在Back Map【背景图像】下面有三个工具按钮,提供了简单直观的功能。

打开一个图片后,图片会以叠加的方式显示在等高线下面。之后,自动切换到图像匹配状态,所谓匹配,就是位移、比例和旋转,让背景图像的大小和角度与等高线对齐。最右侧的眼睛图标,还提供了切换显示/隐藏背景图像的功能。

GIF动态图像·点击显示动态模式

更新等高线并重新载入

当需要清理大量的等高线时,过程中最好能够保存当前的结果,否则,容易产生杯具!利用最右侧的蓝色磁盘按钮,我们可以在清理等高线的过程中,随时保存当前的结果,并重新载入更新后的等高线。

注意:当更新等高线并重新载入后,实际上就改变了原来的等高线图形,所以,如果原始图形的数据很重要的话,建议先做好备份。

Calculation of Terrain and Preview【计算和预览地形】

这一步,就到了计算和处理三维地形的阶段了。与SketchUp自带的Sandbox【沙盒】工具用三角面网格连接等高线段上的顶点不同,TopoShaper是在四边面网格上执行地形计算的。可以通过Grid【网格】设置XY单元格的大小,网格越密意味着精度更高。TopoShaper用绿白棋盘格表示网格的大小和地形的投影线,

关于地形的两种算法

网格中的每个节点高度有两种配置计算方法,一种为“插补法”,当网格的节点位于2条或者多条等高线之间时,TopoShaper确定哪些等高线影响改节点的高度。另一种为“推断法”,节点高度由单条等高线确定,它要么是一条循环线,要么是靠近边界上的最后一条等高线。

点击按钮面板最右侧的工具,可以查询网格上每个节点受哪些等高线的影响,并在左下角显示改点的高度。注意,“插补法”根据红色的等高线计算高度;“推断法”根据紫色的等高线和临近粉红色的等高线计算高度。

GIF动态图像·点击显示动态模式

“推断法”是一种直观判断,山顶(或盆地)的形状通常与周围的高度以平滑的方式过渡。在某些情况下,你可能需要在山顶或盆地设置平坦的地形。

说明:该算法与立体剪裁、平滑形状和样条曲面无关,在自然景观中,等高线实际上是影响地形局部性状的界线,这意味着,地形可能会显示一些急剧变化的陡坡,而不是平滑的球面。

设置网格的尺寸

在初始的计算中,TopoShaper将地形的最长边等分50格,用正方形(近似)网格对地形进行快速的预览。你可能需要根据地形的细节修改这个网格的分辨率。

把光标移动到Grid【网格】按钮上(不要点击),会显示每个格子的真实尺寸。点击Grid【网格】按钮,打开网格尺寸对话框,可以修改X、Y轴单元格的数量,数值输入框的下面,用蓝色的数值显示了每个格子的尺寸。

XY数值框里的数值越小,意味着网格的尺寸越大,地形的细节越低。网格尺寸对话框的红色链条图标,可以锁定XY轴的数值,以保持网格的正方形比例。点击红色的图标会解除锁定(图标显示为绿色),这样可以单独设置XY的数值。

注意,每次修改网格尺寸后,点击Done按钮都会重新计算三维地形。

山顶和盆地

TopoShaper用两种方式来推断山顶和盆地,默认为半球形的曲面,根据周围的等高线来推断;另一种是“平坦”形态。在Hilltop【山顶】的图标上非常直观就可以理解它们的作用。如果要改变所有等高线的形态,直接在按钮面板上切换工具按钮即可。

也可以点击等高线之后,通过光标附近的小工具按钮来切换为另一种“平坦/圆形”形态,这样就可以设置局部的形态。

GIF动态图像·点击显示动态模式

Generation of Terrain geometry【生成地形模型】

这是TopoShaper生成三维地形的最后一步,它将生成由四边面形成的SketchUp曲面。每个四边面由两个三角面组成,对角线遵循thomthom引入四边面的识别惯例(即关闭了对角线的“投射阴影”属性)。此时,当前视图切换回主模型视图。生成的地形有三个元素可以切换显示状态。

想对之前的步骤来说,这一步最简单,主要是控制一些元素的显示,看得出来,TopoShaper利用已有的等高线产生更多的信息。在生成的等高线中,注意3D等高线和2D等高线的区别。

GIF动态图像·点击显示动态模式

还可以在2D等高线上标记高度的数值,当然,前提是你已经创建了2D等高线这个元素。

GIF动态图像·点击显示动态模式

[/erphpdown]

推荐课程

《微BIM·渲染大师 / Thea 设计探索历程渲染》中,介绍了TopoShaper在创建真实三维地形方面的实践应用,本课程已在网易云课堂上线,扫码了解详情。

发表回复

后才能评论