【观察】城市规划中的GIS应用,远比你想象的强大!
说到GIS在城市规划的应用,可能很多人都会用GIS做地形、坡度、坡向的分析,为后期规划设计提供基础和参考。但是,如果你还只会用GIS作地形、坡度、坡向分析的话,那你就太OUT了!
其实GIS远比你想象的强大!1
没有高程信息,自己做高程信息
有时候做方案,想做更大范围的地形分析,却苦于我们手头上只有规划范围内的CAD,有时CAD高程信息不全,更有甚者连CAD都没有,只有纸质版的资料。这时候你是准备问甲方要资料呢?还是准备把纸质版的资料扫描成图片自己描?
其实网上获取带有高程信息的数据有很多种,这里以地理空间数据云下载DEM文件为例,进行说明。
1.需要准备的软件
ArcGIS10.2,AutoCAD
2.高程数据获取
注册登录后,选择“高级检索”,可以检索所需地区的DEM文件,之后点击“数据集”可以选择不同精度的数据。一般选择30M精度的,之后下载即可。
地理空间数据云里提供了行政区、经纬度、行列号等多种类型的搜索模式。我们可以从行政区中搜索我们需要找的地区的DEM文件。行政区搜索的精度到县,可以下载全县域的DEM。如果你有下载范围的经纬度号,可以输入经纬度下载。如果需要镇、村一级的DEM数据,下载县域DEM文件后用GIS中的掩膜工具剪裁所需的范围即可。
3.剔除错误数据
下载的数据解压后,将.IMG或.TIF格式的数据加载到GIS中。因为下载的数据可能存在错误点,导致后期数据分析存在错误,因此需要剔除错误数据。
①选择“spatial analyst—地图代数—栅格计算器”。
②设置DEM数据为0。
③选择“spatial analyst—重分类”,勾选“change missing values to NoData”。
④选择“spatial analyst—地图代数—栅格计算器”,用第3步生产的数据乘以原始数据,确定即可。
此时生成的数据就是正确的。之后用来做高程、坡度、坡向分析就可以了。
4.生成等高线,导入CAD
如果想将DEM数据转化为等高线,为后期利用CAD设计方案做基础,还可以利用DEM数据生成等高线。
①选择“spatial analyst—表面分析—等值线”输入等值线的距离即可。此时生成的等值线,在CAD中无法识别高程值,不可直接导出至CAD,需要添加高程值。
②在刚刚生成的数据图层,点击右键,选择“属性-添加字段”,命名为elevation。
③在新建的elevation字段右键,选择“字段计算器”,输入elevation = contour。(注:转化为CAD可识别的高程值。)
④在刚刚操作的图层右键,选择“导出至CAD”,选择CAD相应的版本即可。
此时,打开刚刚导出的CAD文件就生成了带高程值的等高线了。
注:因为网上下载的数据精度有限,最大精度为30M,因此等值线的距离小于30,会存在一定误差。
2
巧用插件,用GIS帮你建模
在方案初期,简单的体块模型是帮助我们推敲空间关系的重要手段,传统的Sketchup可以帮助我们实现这一目的。但是当你遇到复杂地形、庞大的地块,高密度的建筑,想想自己还得封闭一个一个的等高线,闭合一栋一栋的建筑平面,拉起一个一个的体块,还担心Sketchup可能随时崩溃,是否觉得人生已无可恋?
而GIS利用其空间分析的强大属性,就能快速生成地形和建筑体块,通过插件的应用,便可以使模型导入Sketchup。
1.需要用到的软件
AutoCAD,湘源控规6.0,ArcGIS10.2,arcscense10.2,arcgis for sketchup 6(beta)或FME
2.需要准备的数据
带高程信息的高程点或等高线
由多段线组成的完全闭合的建筑平面轮廓线
3.具体流程
①转化高程信息
利用湘源控规中的“字转高程”将原有的高程点转化为GIS可识别的“DX-离散点”,并将新图层的信息另存到新的CAD文件中,命名为“高程地形”。
②创建地形模型
在ArcGIS中打开新CAD文件,利用“3D analyst”—“数据管理”—“TIN”—“创建TIN”工具生成TIN模型。(注:在“创建TIN”对话框中,高度字段选择Shape Z)
在新建好的TIN模型中调整调其属性,为地形选取合适的颜色并保存。
在arcscense中,添加刚刚生成的TIN模型,地形模型生成完毕。
③处理建筑信息
在CAD中,只保留所需的建筑轮廓线及层高数字,剔除其他无关信息,且保证层高数字位于建筑轮廓线内部,两个信息分别位于两个图层。
④创建建筑模型
在ArcGIS中添加CAD文件中的面要素(Polygon)和注释(Annotaion)(注:annotation要素属性中的text属性记录的就是建筑层数)。
为面要素赋予层数。右键点击polygon图层,选择“连接和关联”中的链接,弹出“连接数据”对话框。在“要将哪些内容连接到该图层”选择“另一基于空间位置的图层”;在“选择要连接到次图层的图层”中选择注释图层即“annotation”;勾选“每个面都将被指定与其边界最接近的点的所有属性……” (注:此时就是基于空间关系,将层数与面连接),输出命名为“建筑”,确定即可。此时生成的“建筑”图层中每一栋建筑都拥有层数属性。
⑤生成三维模型
打开arcscene,将TIN模型和带有层数的“建筑”图层加载进去。
在“建筑”图层右键,选择“属性”,切换到“基本高度”选项卡中,勾选“浮动在自定义表面上”,并选择“没有基于要素的高度”(注:使建筑浮动到TIN模型的表面上)。
切换到“拉伸”选项卡,勾选“拉伸图层中的要素”,点击“拉伸值或表达式”栏的计算器按钮,弹出“表达式构建器”对话框,构建“【text】*3”的表达式(注:3是普通建筑一层的层高,可根据不同建筑设置不同的层高),确定即可。
这时在GIS里就有了在地形上的建筑模型。
⑥将模型转换到sketchup中
由于GIS自带的“多面体转collada”工具会把每一个建筑体块转化成一个单独的“dae”文化,但是当地块面积大、涉及建筑数量众多时,GIS的建筑模型直接导入到sketchup就太过于复杂。因此,就需要借助其他插件来帮助。
FME或者arcgis for sketchup这两个插件都可以实现这一转换。下面以FME为例进行说明。
在arcscene中,右键“建筑”图层中的“属性”,在“基本高度”选项卡中选择“没有从表面获取的高程值”。在“3D analyst ”-“转换”-“3D图层转要素类”,在弹出的对话框中“输入要素图层”选择“建筑”,确定输出位置,命名为“建筑转要素”,确定后,新生产的“建筑转要素”图层生成。从表面看,该图层与“建筑”图层相同,但数据储存的类型已经不同。
⑦打开FME,新建一个工作空间,添加“读模块” ,将刚才的“建筑转要素”文件夹添加进工作站,选择“合并单个要素”,时所有建筑合并成一个组件;
在添加“写模块”中搜索dea,找到collada工具,完成目标数据添加。
之后将“读模块”与“写模块”连接起来,点击开始,完成后得到一个建筑的dea文件,此时,打开sketchup,“文件”-“导入”-“dea格式文件”,找到刚才的文件,模型就生成了。
结语
-----END-----
社群交流 / 原创投稿 / 商务合作
(请添加下方小家微信:jiace03)
来源:北斗城乡规划
推荐阅读
【干货】属实优秀,这下道路勘测设计之纵断面设计全都讲明白了!可下载!
【资讯】《市级国土空间总体规划制图规范(试行)》和《市级国土空间总体规划数据库规范(试行)》印发
【视频】河南省职业教育特色校创建纪实--新乡测绘中等专业学校
推荐关注
温馨提示:近期,微信公众号信息流改版。每个用户可以设置 常读订阅号,这些订阅号将以大卡片的形式展示。因此,如果不想错过“测绘之家”的文章,你一定要进行以下操作:进入“测绘之家”公众号 → 点击右上角的 ··· 菜单 → 选择「设为星标」
↓↓↓点击下方“阅读原文”查看更多精彩内容...