span8
span4
一个强大的对 - FeatureReader和FeatureWriter(FME在新的2016) - 允许简单地集成第三方的命令行工具到FME。
任何工具,即能读取,处理和保存由FME支持的格式数据可以成为一个FME工作流程的一部分,任何图书馆。亚搏在线为了更好的可用性,这样的外部工具可以缠绕成定制变压器,所以只能与没有必要知道任何复杂的语法的熟悉FME界面的用户协议细节的工具需要。
对于这样的集成常规工亚搏在线作流程如下所示。请注意,根据工作流程最部件可以跳过(以蓝色显示)。亚搏在线唯一需要的部件组装命令行并执行它(以红色显示)。
下面是三种最常见的情况:
每个上面的集成工作流图中的步骤被描述。亚搏在线
当一个命令行界面更换为变压器GUI,是有意义的创建外观人性化的参数:替代短选项,使用他们的扩展描述。A“的选择与别名”用户参数允许显示这样的描述而得到的参数,可以直接在命令行中使用的值。
这里有这样的参数可以如何看待一个命令行内:
在编辑选项对话框:
而在变压器的GUI暴露给用户:
某些参数可能需要额外的处理。例如,我们可能需要重新计算归一化的色彩通过FME“颜色选择器”(例如,“1,0.5,0.25”)设置为RGB24表示(255,127,63)。在这种情况下,该参数可以用ParameterFetcher中获取,划分成R,G,和与AttributeSplitter乙部件,并组装成与AttributeCreator所需字符串。请参阅下面SVGReader了解更多详情。
向外部工具的路径可能会或可能不会需要发布作为参数。对于使用一个组织内的定制变压器,这可能是更好地隐藏变压器的命令行内经验的用户的路径。一个FME专业将不得不采取设置变压器起来的照顾。如果工具将是跨组织共享(通过FME店为例),最好是发布的路径:
虽然有可能产生使用常规FME变压器临时输入和输出文件的唯一名称,它更可靠TCLCaller变压器内使用一个特殊的TCL命令。该命令的语法如下所示:
FME_TempFilename
它创建于FME TEMP文件夹的唯一名称的空文件。
举例来说,如果我们想作一个临时文件使用的ImageMagick的公用事业公司之一,我们可以写出下面的TCL表达式:
表达式会产生类似下面的名称:
C:\ Users \用户名\ AppData \本地的\ Temp \ ImageMagick_1453409310204_7104.png
现在,这个名字可以用于制作命令行设置为变压器参数和填充一些内容的文件。
根据工作流,它可能有必要在中间亚搏在线文件保存到一些临时位置或直接使用的源文件。例如,当我们使用LAStools的理由分类,我们可以第一个剪辑的感兴趣的区域和原始点云的只有这部分分类。另一个例子是当源格式不被支持LAStools。在这种情况下,我们需要做出临时LAS文件。
使用带有TCL命令(见上文)和FilenamePartExtractor变压器指定到temp输出数据集和用于该文件的根名称路径,我们可以创建属性保留的文件名:
在此之后,很容易FeatureWriter内使用这些属性:
在命令行可以直接在表面建模变压器被写入或AttributeCreator作为一个属性,然后将在表面建模可以使用由。
命令行应包括:
下面是几个例子:
“ “$(IMAGEMAGICKCONVERT)” -delay $(DELAY)@Value(_ImageMagick_sequence_file)-loop $(LOOP)$(GIFOUTPUT)”
“” $(LASTOOL) “-i ”@Value(_Input)“ O ”@Value(_lastools_temp_output)“ -scale_u $(HEIGHTSTORAGESCALE)$(HEIGHTSTORAGE)”
始终确保在命令中的路径,以及整个命令在其周围双引号 - 这有助于避免与路径一些字符潜在的问题,如空格。
在某些情况下,组装的命令行可能变得太长超过所允许的限制。在Windows中,限额为8192个字符。有几种可能的方法来解决此限制。例如,而不是列出在命令行中的所有文件,可以使用通配符,见AnimatedGIFWriter例子。或选择更接近根FME_TEMP文件夹位置使用的文件夹和文件较短的名称。例如,而不是C:\ Users \用户名\应用程序数据\本地\ TEMP \,使用E:\ FME_TEMP \
组装的命令行属性进行到表面建模,其执行处理,并与工作空间的其他部分继续之前等待结果。外部工具还可以报告给日志窗口的工作或错误消息的状态。
一旦外部工具完成其工作,并提出了一些输出,FME可以使输出回来FeatureReader作进一步处理。在某些情况下,可能有必要与原合并处理的数据。
例如,在格式点云不被支持LAStools可能需要与所处理的数据为加入保留原始的组件。这可以用PointCloudMerger由X,Y,以及源和处理点云两者Ž来完成。
外部进程完成后,数据被带回正常的工作流程FME,我们可能需要删除临时文件。亚搏在线这是可能通过OS的命令,在表面建模诸如“删除”,例如:
德尔 “@Value(_lastools_temp_input)”/ Q
在某些情况下用点云和栅格打交道时,更可靠,FMEFunctionCaller发出以下命令FME:
@Geometry(DELETE_SOURCE_DATASET)
该变压器可以读取几何形状或更高版本后右侧放置 - 在特征的几何形状仍然存在的任何地方。因为不需要它了,例如,如果其几何形状在FME工作流程销毁或翻译结束的变压器尽快删除临时文件。亚搏在线
注意,这两个OS“删除”命令和@Geometry(DELETE_SOURCE_DATASET)函数应谨慎使用,以避免删除原来的源数据或临时文件之前或由一个外部进程在其使用期间。
在这篇文章中描述的一般工作流程的整合并没有被放置亚搏在线到一个定制的变压器。创建这样一个变压器,但是,可以更容易地从主工作区的外部工具完成了任务分开。这是比较容易调试,更新或修改单个定制变压器比整个工作区,这可真够大的,复杂的。这里显示的所有示例都可以很容易地通过右键单击自定义变压器并选择“编辑”进行修改。变压器将在一个新的工作台选项卡中打开。学习它是如何工作的和随意改变它你需要的方式,添加或删除选项,改变执行转换的工具,将参数转化为另一种语言,或者一些工具链组合进一个变压器,如果在你的工作环境这是有道理的。
SVG(可伸缩向量图形)是一个XML格式的矢量图像格式二维图形,支持互动性和动画。FME支持编写SVG文件,但不支持读取。我们可以使用光栅来读取SVG文件图像贴图,这是一个用于显示、转换和编辑光栅图像和矢量图像文件的免费开源软件套件。它可以读写200多种图像文件格式。
注意ImageMagick不是FME的一部分。你可以从这里下载你的产品http://www.imagemagick.org/
SVGReader自定义转换器允许读取一个或多个svg文件,并用FeatureReader将它们作为栅格导入FME。然后可以以任何受支持的光栅格式存储光栅。注意,有些格式可能需要调整其光栅解释(参见rasterinterpretation tationcoer)。自定义转换器中不使用FeatureWriter。
同样值得注意的是,我们是如何设置背景的颜色和透明度的——参数被设置为一个标准化的FME颜色,然后用AttributeSplitter和AttributeCreator更改为ImageMagick rgba模型:
“rgba (@Evaluate (@floor (@ value (_color {0}) * 255)), @Evaluate (@floor (@ value (_color {1}) * 255)), @Evaluate (@floor (@ value (_color{2}) * 255)),(α)美元)”
下载的模板:svgreader.fmwt
另一个使用ImageMagick的例子。AnimatedGIFWriter通过添加动画GIF支持扩展了FME的写作能力。
使用FME可以更容易地创建地理相关的动画,例如,驱动地图。
工作空间示例展示了如何将背景区段传递给动画的移动部分,这样用户就不必计算动画中栅格化特征的位置。
自定义转换器使用FeatureWriter将背景和所有动画帧保存到临时PNG文件中。图像贴图将它们组合成GIF。
FME 2016不支持动画gif,所以读取文件并在数据检查器中显示是没有意义的。查看动画最简单的方法是通过网络浏览器:
下载的模板:work2home.fmwt
受欢迎的拉斯托尔软件套件被许多组织广泛用于处理激光雷达数据。为了2016年的FME,我们制作了几个定制的变压器,封装了一些LAStools的仪器。
注意,LAStools套件不是FME的一部分。你可以下载你的LAStools从http://rapidlasso.com网站/。有关价格和许可信息,请访问http://rapidlasso.com/pricing/和http://www.cs.unc.edu/~isenburg/lastools/license.txt。
lasground LAStools_lasground_Caller调用。exe, which classifies points as ground and non-ground.
在本例中,FeatureWriter用于在输入转换器之前更改源文件,或者LAStools不支持源点云格式。在这两种情况下,临时的LAS文件创建在临时文件夹和lasground.exe运行在这些文件,否则它直接与源文件:
FeatureReader总是用来把激光产生的结果。exe回到FME。
这个工作流中一个有趣的部分是将原始点云与生成的LAS文件亚搏在线合并在一起。如果源有不被LAS支持的组件,它们将在lasground.exe完成工作后丢失。pointcloudmerge允许通过X、Y和Z将原始点云与结果组合起来:
请注意,如果工具更改了其中一个组件,则XYZ合并将不起作用。
下载LAStools包装变压器:lastoolstransformers.zip
下载模板(包含5个LAStools包装变形金刚的工作空间):lastoolsdemo.fmwt
©2019安全亚搏在线软件公司|法律