概述 在本教程中,您将学习如何使用MapnikRasterizer将矢量多边形要素转换为栅格数据,尽管此方法也适用于其他几何对象(例如点和线)。有关如何使用MapnikRasterizer转换器的更详细介绍,请参阅MapnikRasterizer简介文章。 下载vector-to-raster.fmwt neighborhoodsgdb.zip parksgdb.zip 注意:由于您正在处理面向公众的数据库,因此有时可能会覆盖和/或修改表。如果您的转换器产生意外结果,请参阅重置PostGIS培训数据库文章。或者,您可以下载提供的文件,并使用适当格式的读模块替换PostGIS读模块。 练习在本练习下,您要创建一个分类为陆地和公园区域的栅格地图。使用PostGIS培训数据库中的街区和公园多边形要素,您将创建一个栅格数据集,其区域按RGB值分类(绿色表示公园,黑色表示城市)。 说明1.启动FME Workbench 2.创建一个新工作空间 - 在“开始”页面的“创建工作空间”部分中,选择“创建新工作空间”选项。

3.添加PostGIS 读模块 - 在画布上没有选择任何内容的情况下开始键入“PostGIS”,然后通过双击或使用箭头键和Enter键将其添加到画布,从读者列表中选择PostGIS格式。
- 接下来,从读模块 Connection列表中选择PostGIS Training Database。如果尚未设置数据库连接,请选择“添加数据库连接”并输入以下参数:
- 接下来,打开读模块参数并从表列中选择Parks and Neighborhoods表。

4.添加MapnikRasterizer MapnikRasterizer允许您通过将要素划分为称为图层的组,将点,线和多边形要素转换为新的栅格。有关更多信息,请参阅MapnikRasterizer文档。 - 选择Neighborhoods和VancouverLandBoundary读模块然后键入“Mapnik”以显示快速添加搜索中的FME转换器列表。通过双击或使用箭头键和Enter键将转换器列表中的MapnikRasterizer添加到工作空间。

5.设置MapnikRasterizer参数 - 添加转换器后,双击MapnikRasterizer或单击红色齿轮图标以打开转换器参数。
请注意,渲染规则(Rendering Rules)中列出了两个连接; 但是,它们被设置为线标识。 - 单击“线”将“渲染规则标识”更改为“多边形”。
- 重要提示:确保渲染规则按照上面的屏幕截图进行排序,否则将在公园像元上面创建城市像元。需要首先对城市像元进行分类,然后是公园像元,以便它们出现在输出栅格上。您可以使用“渲染规则”框下方的上移/下移箭头调整渲染规则的顺序。

6.分类Neighborhood像元 - 单击“街区”行的“样式”列中的“编辑”以修改多边形参数。您可以在此处设置栅格输出的颜色,平滑和合成。在此示例中,您希望来自街区多边形的城市像元为黑色,而公园多边形中的公园像元为绿色。
- 单击颜色选择器,然后从基本颜色列表中选择黑色。或者,您可以使用RGB,HSV或HTML值设置颜色。在此示例中,RGB值为红色:0,绿色:0,蓝色:0。设置颜色后单击“确定”。
- 接下来,在“多边形参数”中,通过单击下拉箭头展开“平滑”部分。平滑用于控制输出是遵循布尔值还是模糊逻辑。
- 将平滑Gamma设置为0,然后单击“确定”接受“街区多边形参数”。

平滑Gamma值为1使用模糊逻辑,这对于具有移动或不确定性的区域(例如海岸线)非常有用。或者,平滑Gamma值为0时使用布尔逻辑,当您想要100%确定地对像元进行分类时,该逻辑非常有用。本练习将使用布尔逻辑,因此像元将被分类为或是城市或是公园 - 这将阻止像元被分类为20%公园和80%城市。 模糊逻辑 
布尔逻辑 
7.对公园像元进行分类 接下来,您将对公园像元进行分类。与分类城市像元类似,通过单击“公园”行中的“编辑”修改“多边形参数”。 - 单击颜色选择器将颜色设置为绿色。或者,您可以在颜色文本框中键入“0,1,0” - 这将为您提供红色的RGB值:0,绿色255,蓝色:0。
- 再次,展开“平滑”部分并将“平滑伽玛”设置为0。

8.设置栅格属性 - 最后,您必须为我们将要生成的栅格定义像元大小。从“栅格属性”部分的下拉列表中将“尺寸规范”设置为“间距”。
Cell Spacing参数指定输出栅格像元的宽度,以地面单位测量。注意:较小的像元提供更高的分辨率,但是,在查看大范围时,它们通常需要更长的时间才能加载(即像元间距为1比为5需要更长的时间来加载)而且文件大小也很大)。 - 将Cell Spacing设置为1。
- 最后,展开“背景”部分并将“颜色Alpha值”设置为0。
这将有效地删除背景像元,因为您只想在本练习中为城市或公园区域创建栅格像元。有关更多信息,请参阅设置NoData和添加Alpha波段以删除黑色边界一文。 
9.添加一个Inspector - 接下来,添加一个Inspector并将其连接到MapnikRasterizer:Raster端口。这将在转换运行后自动打开FME Data Inspector中的栅格数据集。
10.添加ER Mapper ECW写模块 - 与添加读模块类似,键入“ECW”,然后从写模块列表中选择ER Mapper ECW格式。
- 通过单击“数据集”省略号为ECW文件指定文件夹。指定文件夹位置后,将“表定义”设置为“自动”,然后单击“确定”。
- 接下来,在“要素类参数”对话框中设置“栅格文件名”,然后单击“确定”将ECW写模块添加到画布。
- 最后,将ECW连接到MapnikRasterizer:Raster端口。
11.运行工作空间 - 单击工具栏上的“运行”按钮,或使用菜单栏上的“运行”>“运行转换”运行工作空间。

如果您收到意外结果,则可能需要重置您读入的PostGIS表。有关详细信息,请参阅重置PostGIS培训数据库一文。 结果输入 输出
转换器 本文转载来自CSDN作者:fmechina 版权归作者所有 原文链接:https://blog.csdn.net/fmechina/article/details/100518730?spm=1001.2014.3001.5501 |