span8
span4
常见的GIS操作是覆盖两个(或多个)多边形,以确定和提取它们重叠的区域。
例如,我可能有一个多边形数据集,它表示军队拥有的土地。我也有一个多边形的数据集,代表被保护为野生动物保护区的土地。通过叠加这两个区域,我可以发现哪些属于军队的土地也是野生动物保护区;即。这些是数据集的交集。
FME有几个将覆盖数据的变压器,但实际上提取重叠区域作为新的多边形特征需要使用AreaOnAreaOverlayer变压器。
这些示例的源数据集是MapInfo选项卡格式的分区数据的矢量多边形数据集,以及谷歌KML格式的邻里数据的矢量多边形数据集。
在FME数据检查器中,它们看起来是这样的(左,分区;对的,社区):
这个例子是一个简单的练习,以发现基茨兰诺附近被划为商业用地的土地比例。工作区将测量Kitsilano邻近区域的面积,将其与商业区域重叠,并计算提取的数据的面积。
1.启动FME工作台,并从一个空画布开始。从菜单栏中选择Reader >添加Reader。
将数据格式设置为MapInfo选项卡(MITAB)。选择附加的数据集作为源。
2.再次选择Reader >,从菜单栏中添加Reader。这次将格式设置为谷歌KML,并选择附带的KML数据集作为源。当出现提示时,取消列表中所有功能类型的选择,只重新选择communities层。
3.为每个特性类型添加一个测试器转换器,添加一个连接到邻近数据的测试器:传递端口的re投影仪,并添加一个连接到第一个测试器和re投影仪的AreaOnAreaOverlayer。工作空间现在看起来像这样:
4.打开第一个测试人员的参数对话框。将其设置为在ZoneCategory = Commercial的地方进行测试
打开第二个测试人员的参数对话框。设置为测试NeighborhoodName = Kitsilano
5.打开投影仪的参数对话框。将其设置为重新投影到坐标系统UTM83-10:
这是必需的,因为KML数据在纬度/经度坐标系统中,而分区数据不在其中。这个转换器将把它们重新映射到一个公共的坐标系统。
6.将检查器变压器连接到AreaOnAreaOverlayer:Area端口并运行翻译。通过查询来检查输出特性。您将注意到一个名为_overlaps的属性。2(或更高)的数字表示多个多边形的交集。
7.在AreaOnAreaOverlayer和Inspector transformer之间添加一个测试变压器。将其设置为测试_overlaps > 1的位置
8.重新运行工作区。结果将是一组多边形特征,显示基茨兰诺社区与商业用途分区的交集:
最初的意图是创建一个工作空间,计算这些功能的面积占整个Kitsilano社区的百分比。要做到这一点,需要使用普通交集之外的技术,因此剩下的步骤是可选的。
9.添加一个计算变压器来计算Kitsilano附近的面积。它必须经过投影仪,否则测量单位将是十进制度!
将其设置为在一个名为KitsilanoArea的属性中存储邻居的区域。
10.添加第二个计算变压器来计算交叉口的面积。它应该在工作空间的最后:
将其设置为将这些特性的区域存储在一个名为IntersectedArea的属性中。
11.在工作空间的末尾添加一个统计计算器转换器。打开参数并设置分析IntersectedArea属性,将这些属性的和写成TotalIntersectedArea:
12.最后,向StatisticsCalculator添加一个ExpressionEvaluator转换器:完成输出端口。
打开参数对话框,将其设置为计算TotalIntersectedArea作为原始KitsilanoArea的百分比:
13.重新运行转换。输出应该报告,被划为商业用途的Kitsilano的百分比是11.8%。
要发现数据QA的交集并删除重叠数据的碎片,请参阅即将发布的数据QA教程。
©2019安全亚搏在线软件公司法律