1. 引言
FLAC3D计算边坡稳定性有时需要建立相对真实的地形地貌模型。经常使用的一种方法是在Autocad中建立一个二维边坡剖面,然后把产生的DXF文件导入到FLAC3D,在FLAC3D中利用《FLAC3D三维模型的建立---Extrusion工具》所述的方法生成三维模型,对于一些复杂地形来说,显然这是一种非常近似的做法。现在FLAC3D提供了geometry接口,因此我们想把更真实的地形输入到FLAC3D模型中。这个笔记尝试使用SketchUp和Google地图建立地表的geometry, 然后输入到FLAC3D。
2. SketchUp生成地形geometry
使用下面的步骤生成地形geometry:
【1】单位选择----启动SketchUp,新建一个文件,选择"模型信息"菜单。
然后在打开的窗口内选择“单位”,如下图所示。检查长度单位是不是“米”, 如果是“英尺”的话,切换成“米”,这更符合中国用户的习惯。关闭这个窗口。
【2】选定位置----选择菜单“添加位置”,如下图所示。
点击'添加位置'后,转换到Google地图,下图中所示的白色正方形是一个区域选择框,想选择哪个区域,就把框移动到要相应的位置,这个选择框的边长是1公里,用户不可改变其大小,这意味着Google一次只允许选择1平方公里的区域,如果想选择范围大一点儿,可以多操作几次,然后拼接在一起,但拼接起来的图形肯定有拼接误差。我不确定这是不是Google的一个收费项目,如果用户付费,是不是选择的范围能比1公里大一些呢?
在地图上面的搜索框内输入想要显示的位置,例如我输入"Hohhot, CN",Hohhot是内蒙古自治区呼和浩特的英文名称,不过目前的版本只可以输入英文搜索,不接受中文字符搜索地名。下图所示是呼和浩特,具体这是哪个位置我也不清楚,可能是市中心吧。
我只知道呼和浩特的北面是大青山,因此向上移动鼠标,移动到城市的边界外便进入山地区域。沿着去武川的线路随便找了一块地方,如下图所示。
【3】导入地图----按地图右侧的"选择区域"按钮,然后按"导入"按钮,
刚才选择的地图区域便导入到SketchUp中,如下图所示。
按照相同的方法再输入临近的三块区域,于是拼成下面的地形图。
从主菜单“视图”选择“工具栏”,选择“地点”
然后在工具栏中点击“切换地形”,于是显示出三维的地形。
【4】导出地图----选择“导出”-> “三维模型”, 以stl格式保存,保存文件名为dixing.stl。
3. 导入stl文件到FLAC3D
打开FLAC3D的Geometry工具,导入dixing.stl,如下图所示。应该注意,目前的工作只是演示了一个真实地形的输入方法,输入进来的这个网格并不能直接用于计算,还需要与FLAC3D命令联合在一起才能建立起完整的模型。
4. 导入stl文件到Rhino
事实上,对于象上面例子的不规则形状曲面来说,FLAC3D自身没有能力处理为规则的形状,因此必须使用另一个工具软件Rhino, 进一步,可以使用Rhino的插件Griddle来进行处理,这是后话了。现在我们仅把dixing.stl 输入到Rhino中,如下图所示。
5. 结束语
本文简要描述了使用SketchUp导入Google地图的过程,生成的stl文件能够直接输入到FLAC3D建立模型或者输入Rhino中作进一步处理。总之,这种方法能够为FLAC3D产生出真实的地表模型。不过,本文没有进行更深入的工作,许多因素,例如地形的坐标和高程还没有来得及考虑。