FMEDesktop培训教程第三章数据转换操作(三).doc

FMEDesktop培训教程第三章数据转换操作(三).doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
FMEDesktop培训教程第三章数据转换操作(三)

基于组和基于要素的转换 FME函数使用下面两种基本方法中一种对数据进行转换—基于要素或基于组。 基于要素的转换 在这种转换方法中,一个函数在要素的基础上转换数据。一次只处理一个单一的要素,并且转换结果不会影响到其它要素的转换结果。 一般来说,相同数目的要素来自输入的函数。 下面是有关基于要素的转换例子… ? Measurements ——一次只计算一个要素的长度和面积,并且,不会影响到其它要素的长度和面积。 ? Line Generalization ——依次缩编每个线性要素,并且不必参考周围的要素。 ? Centre of Gravity Calculations ——FME计算一个面积要素的“重心”(地理中心),并且,每个计算计算都是唯一的,不依赖于其他的要素。 上图:重心的计算 对于传统的计算法,一些缩编功能在对一个要素进行处理时,会影响到其它的要素,但是,FME则只会减少点的数目。 基于组的转换 对于这种转换方法,函数会处理一组要素。在进行转换之前,所有的要素就会被合并为一组,并且每个要素都会直接影响到其它要素的转换结果。 使用这种转换方法,转换后函数的要素数目很有可能不同于输入的要素数目。 下面是有关基于组的转换的一些例子… ? Polygon Creation – 当一组点组成一个封闭的形状时,FEM就会创建一个多边形要素。线类要素就会合并,产生一个单一的面类要素。 ? Statistics Calculation –StatisticsCalculator为一组要素计算属性的平均值,最大以及最小值。 ? Intersections – 计算一条线上的插入点一定要使用这种方法,这是因为每个输入要素都会影响到输出要素。 上图:插入点的处理 将要素概念/基于组的转换和几何/属性转换结合起来,就能创建一个矩形,来表示每种类型的转换? ?例如,AreaBuilder就是一个有关基于组,几何转换的函数。 浏览Workbench Transformer Gallery ,就可以找到其他的例子。 ? ?进行成组操作 默认地,一个基于组的函数会将所有经过它的要素编成一组,但是,许多情况下,要求有选择地将要素编成组。为了满足这一要求,许多函数都有一个选项—Group-By。 Group-By选项允许对数据的属性进行选择。在开始转换之前,首先将相同属性??得要素归为一组。 上图:使用 LineOnLineOverlayer函数,将大量线性要素进行交叉。选择“name”作为Group-By属性。结果就是,每组中含有相同值“name”的要素被其他组所取代。有用的输出就是,只有同名的线类要素才会相交形成交叉线。 ? 例4:进行成组操作 例1,2,3中已经计算了城市Interopolis中公园的平均面积。使用函数AreaCalculator,平均面积为1,507,766平方尺。 但是,一些人指出,数据中的许多多边形都属于同一个公园—Big Walnut Creek,这些多边形应该被当做一个公园,而不是很多个,现在让我们来解决这个问题… 1) 启动Workbench. 打开例3中的工作空间,或者重新创建一个。 2) 放置一个函数 – Aggregator 将函数Aggregator放置到工作空间中。 点击Aggregator函数,拖动它,直到记号位于源数据和AreaCalculator之间的连线上,这是,连线就会变成粉红色(如下图): ? ?放开鼠标,这时,就将函数插入到工作流中了。 下图:工作空间看上去就是这样的。 ? 3) 检查函数的参数 打开Aggregator 设置对话框,将group-by 属性名改为“name”(如下图)… ? ? ?4) 运行工作空间 保存,并且运行工作空间。 如果公园的数量更少,但是总面积相同,平均值(_mean)就应该更大。 之前的值为1507766平方英尺,那么现在呢? 5) 测试问题 OK – 现在是时候来检查你学到了什么! 为什么我们使用Aggregator函数,而不是StatisticsCalculat中的成组选项呢? InteropGeek68 说过… “一些基于组的函数能够改善性能,而函数Aggregator就是其中的一个。 如果你已经知道数据是被归为一组的,那么就可以将“Input is Ordered by Group”设置为”YES”,来查看其表现。 Clipper 和NeighborFinder函数也有相同的设置!” ? 坐标系转换 为了在地球表面将空间数据定位,大多数的空间数据都和特定的坐标系相关。 ? 坐标系基础 FME处理的每个要素,实际上都有坐标系,例如,FME就能随时知道要素是属于哪个坐标系的。当我们读取属于不同坐标系的多个数据集时,就不会感到困惑了。 注意:一些用户将数据的

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档