概述
在本教程中,您将学习如何使用ContourGenerator和数字高程模型(DEM)创建等高线。FME中的ContourGenerator基于栅格单元的输入值构建Delaunay三角剖分,然后使用该栅格单元生成等高线。
generate-contours-from-raster.fmwt
dem-full.zip
练习
在这种情况下,您将从DEM创建等高线,因为您想要创建一个50米的等高线数据集供以后使用。
说明
1.启动FME Workbench
如果尚未打开,请启动FME Workbench。
2.创建一个新工作空间
在“开始”页面的“创建工作空间”部分中,选择“创建新工作空间”选项。
3.添加加拿大数字高程数据(CDED读模块)
在画布上没有选择任何内容的情况下开始键入“CDED”,然后通过双击或使用箭头键和Enter键从读模块列表中选择CDED格式将其添加到画布。
单击数据集省略号,然后导航到示例数据文件夹并选择DEM-Full.dem文件(例如,C:\ Users \ Documents \ FME \ ElevationModel \ DEM-FULL.dem)。
4.添加ContourGenerator
选择CDED读模块并键入“ContourGenerator”,然后从“快速添加搜索”中的“转换器”列表中选择ContourGenerator。这将自动建立从Reprojector 到ContourGenerator的连接。
5.设置输出等高线间隔
打开ContourGenerator转换器参数。
将表面容差(Surface Tolerance)参数的值设置为0. Surface Tolerance是用于过滤顶点的参数; 但是,由于您正在使用栅格数据集,因此可以通过指定值0来关闭此功能。
接下来,将输出高程属性的名称从“_elevation”更改为“elevation”。
最后,将输出等高线间隔设置为50 - 这将应用使用输入要素单位。
将所有其他参数保留为默认值,然后单击“确定”接受对ContourGenerator参数的更改。ContourGenerator参数对话框应类似于下面提供的屏幕截图中的对话框:
注意:ContourGenerator输出的默认维度为3D。
6.组合等高线线段
将LineCombiner Transformer添加到画布并连接ContourGenerator:Contours端口。您的工作空间应如下面的屏幕截图所示:
此转换器的目的是组合路径以使每个路径ID具有一个记录,而不是具有分段的等高线。
打开LineCombiner参数。
唯一需要更改的参数是”组合属性(Combine On Attributes)”。单击“组合属性”省略号以显示要合并的属性列表。从列表中选择Elevation属性,然后单击OK返回LineCombiner参数。
单击“确定”接受更改并关闭LineCombiner参数。
注意:为了组合行,它们必须在完全相同的起点/终点处相遇。另外,在三条或更多条线的交汇点处,线将保持断开。有关更多信息,请参阅LineCombiner文档。
将所有其他参数保留为默认值,然后单击“确定”接受对LineCombiner参数的更改。
8.添加一个Inspector
接下来,在LineCombiner之后添加一个Inspector并将其连接到LineCombiner:Line端口。这将在转换运行后自动打开FME Data Inspector中的栅格数据集。
9.添加Industry Foundation Class STEP Files(IFC)写模块
与添加读模块类似,键入“IFC”,然后从写模块列表中选择Industry Foundation Class STEP Files(IFC)格式。
单击数据集省略号以指定保存数据的位置并命名文件:50mContour(例如,C:\ Users \ Documents \ FME \ Contours \ 50mContour.ifc)
将“图层定义”设置为“自动”以确保将创建或重命名的所有属性都写入IFC文件。 (Industry Foundation Class-工业基础类 STEP-产品模型数据交换标准)
10.运行工作空间
单击工具栏上的“运行”按钮,或使用菜单栏上的“运行”>“运行转换”运行工作空间。由于您将Inspector连接到最终的转换器,因此输出数据集将自动在FME Data Inspector中打开。
结果
输入
输出
转换器
ContourGenerator -根据输入点和隔断线构造Delaunay三角剖分。
Inspector - 将要素发送到FMEData Inspector以供显示。
LineCombiner -占用线并连接它们以形成更长的线。
![aac77dfb112166658989fd98ffe95a91.gif](https://i-blog.csdnimg.cn/blog_migrate/b0877d6e6b5fc32be6188bd3dac68682.gif)
![cb5b6c124745c0288356cfa4803b52d8.png](https://i-blog.csdnimg.cn/blog_migrate/a49d13c178dd5516c77e5d749c14f301.jpeg)
![7a21ba2344462d536b713b85aaa0ef26.png](https://i-blog.csdnimg.cn/blog_migrate/983726a69667a18d9eb74fec5c96290a.png)
![7a21ba2344462d536b713b85aaa0ef26.png](https://i-blog.csdnimg.cn/blog_migrate/983726a69667a18d9eb74fec5c96290a.png)
●01 如何在FME中执行此操作
●02 将列添加到表中
●03 对表格或图形数据进行排序
●04 计算新字段的值
●05 关联数据文件和字段
●06 从线段创建多边形
●07 纠正拓扑错误
●08 导入数据库表、栅格数据、矢量数据
●09 数据检索
●10 按区域掩码选择数据
●11 从栅格转换为矢量
●12 从矢量转换为栅格
●13 通过重新采样修改栅格像元大小
●14 按地理要求更改栅格值
●15 减少不必要的坐标点
●16 来自点数据的TIN(不规则三角网)
●17 通过克里金法将点插值转换为栅格
●18 从点生成等高线数据