概述 在本练习中,您将学习如何通过使用FME中的Generalizer转换器删除不必要的坐标来简化线型要素- 此操作通常称为除草(weeding)。 下载reducing-unnecessary-coordinates.fmwt bike-paths.zip 注意:由于您正在处理面向公众的数据库,因此有时可能会覆盖和/或修改表。如果您的转换产生意外结果,请参阅重置PostGIS培训数据库文章。或者,您可以下载提供的文件,并使用适当格式的读模块替换PostGIS读模块。 练习在这种情况下,您希望简化自行车道路网络以显示一般路径而不是每一圈。我们将使用Douglas(抽稀)算法通过删除顶点来减少坐标密度,从而简化线条。 说明1.启动FME Workbench 2.创建一个新工作空间 - 在“开始”页面的“创建工作空间”部分中,选择“创建新工作空间”选项。
3.添加PostGIS读模块 - 在画布上没有选择任何内容的情况下开始键入“PostGIS”,然后通过双击或使用箭头键从读模块列表中选择PostGIS格式,按回车键将其添加到画布。
- 接下来,从读模块连接列表中选择PostGIS Training Database。如果尚未设置数据库连接,请选择“添加数据库连接”并输入以下参数。
- 接下来,打开读模块参数并从表列中选择BikePaths表。
4.添加一个Generalizer Generalizer根据指定的算法转换或测量几何要素。有4种类型的算法:泛化(抽稀),平滑,测量和拟合。在本练习中,您将使用抽稀算法,因为您希望通过删除顶点来降低坐标密度。 - 通过键入“Generalizer”在画布中添加Generalizer,以在快速添加搜索中显示FME转换器列表。通过双击或使用箭头键从转换器列表中选择Generalizer,按回车键将其添加到画布。
- 添加转换器后,将BikePaths读模块连接到Generalizer。
5.指定抽稀容差 接下来,指定抽稀容差。抽稀容差是抽稀算法使用的参数,它以与要素坐标相同的单位进行测量。有关更多技术细节,请参阅Generalizer文档。 - 添加Generalizer后,双击Generalizer或单击齿轮图标以打开转换器参数对话框。
您将使用默认算法Douglas(抽稀),因为它将删除导致偏差小于抽稀容差(Generalization Tolerance)的顶点,但不会更改剩余顶点的位置。该算法擅长减少一行中的点数; 然而,它不能很好地保持线的形状或相对于其他实体的空间关系。 - 将Generalization Tolerance的值设置为10可将BikePaths线要素简化为10个地图单​​位(在本例中为米)。然后单击“确定”接受“Generalizer参数”。
6.添加一个Inspector - 接下来,添加一个Inspector并将其连接到Generalizer:Output端口。这将在转换运行后自动打开FME Data Inspector中的栅格数据集。
7.添加Google KML写模块 - 与添加读模块类似,键入“KML”,然后从写模块列表中选择Google KML格式。
- 通过单击“数据集”省略号,指定文件名并设置KML文件的目标文件夹。指定文件夹位置和文件名后,将“表定义”设置为“自动”,然后单击“确定”。
- 将写模块添加到画布后,将其连接到Generalizer:Output端口。
8.运行工作空间 - 单击工具栏上的“运行”按钮,或使用菜单栏上的“运行”>“运行转换”运行工作空间。由于您将Inspector连接到最后的转换器,因此输出数据集将自动在FME Data Inspector中打开。
结果输入 输出 转换器
本文转载来自CSDN作者:fmechina 版权归作者所有 |