问题标签 [fme]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
159 浏览

c# - 在 FME2015 中以编程方式设置变压器参数

我正在尝试将我的应用程序从 FME2009 升级到 FME2015。我遇到的问题是我设置的参数似乎没有在实际的变压器中使用。相反,正在使用来自转换器定义的默认值。具体来说,没有应用源和目标坐标系名称。

当我的应用程序与 FME2009 链接时,以这种方式设置参数非常有效。

代码摘录:

当我执行此代码时,我可以从日志中看到正在使用默认值。

日志摘录:

名为 TOM_PRICE_MINE_MGA 的坐标系不存在。坏消息:找不到坐标系“TOM_PRICE_MINE_MGA(TOM_PRICE_MINE_MGA)”的定义 (crdsysmn.cpp:1074) 名为 TOM_PRICE_MINE_MGA 的坐标系不存在。坏消息:指定未知坐标系“TOM_PRICE_MINE_MGA” - 正在中止 (crdsysmn.cpp:1628) 指定未知坐标系“TOM_PRICE_MINE_MGA” - 正在中止坏消息: Reprojector:无法创建重投影引擎 (fmereprojector.cpp:404) Reprojector:无法创建重投影引擎

变压器摘录:


编辑 1

我找到了 IFMEOTransformer.Serialize 方法并在实例化转换器后运行它。

我的指令:NAME,SpineClipTransformer,VERSION,0,PARAMETER_VALUES,"SOURCE_COORDSYS,LL-GDA94,XFORMER_NAME,SpineClipTransformer,DEST_COORDSYS,MGA94-50",INPUT_FEATURE_TYPES,,INPUT_FILTERS,,INPUT_ATTRS,,OUTPUT_FEATURE_TYPES,,OUTPUT_FUNCTIONS,

IFMEOTransformer.Serialize() 输出:NAME,SpineClipTransformer,VERSION,1,PARAMETER_VALUES,"__COMPOUND_PARAMETERS,,XFORMER_NAME,SpineClipTransformer,TRANSFORMER_GROUP,",INPUT_FEATURE_TYPES,,INPUT_FILTERS,,INPUT_ATTRS,,OUTPUT_FEATURE_TYPES,,OUTPUT_FUNCTIONS,

尝试遵循这种格式(对此一无所知),我将指令更改为:NAME,SpineClipTransformer,VERSION,1,PARAMETER_VALUES,"__COMPOUND_PARAMETERS,SOURCE_COORDSYS,LL-GDA94,XFORMER_NAME,SpineClipTransformer,DEST_COORDSYS,MGA94-50,TRANSFORMER_GROUP,",INPUT_FEATURE_TYPES,,INPUT_FILTERS,,INPUT_ATTRS,,OUTPUT_FEATURE_TYPES,,OUTPUT_FUNCTIONS,

新的 IFMEOTransformer.Serialize() 输出:NAME,SpineClipTransformer,VERSION,1,PARAMETER_VALUES,"__COMPOUND_PARAMETERS,SOURCE_COORDSYS,XFORMER_NAME,SpineClipTransformer,TRANSFORMER_GROUP,",INPUT_FEATURE_TYPES,,INPUT_FILTERS,,INPUT_ATTRS,,OUTPUT_FEATURE_TYPES,,OUTPUT_FUNCTIONS,

0 投票
3 回答
85 浏览

sql - 当多个属性相同时匹配特征

被我用于 FME 的 InlineQuerier 转换器的 SQL 语句卡住了。我通常不太使用 SQL 代码,只使用 if 来执行简单的一对一连接。我目前正在使用一个包含多个属性的数据框,我想基于这些创建一个额外的属性。一个简短的例子:

我正在尝试根据所有 4 个属性为所有功能提供一个唯一的 RoadID,以便我以后可以合并它们。新属性 RoadID 必须是数据类型 Integer,并且值应该匹配 4 个属性的唯一组合。

结果应该是这样的:

我是使用 concat 还是应该使用简单的 if then 语句来解决问题?

0 投票
1 回答
677 浏览

excel - 在 FME 中使用多个表格转换 Excel 工作表

我需要使用 FME 将 Excel 文件转换为 ESRI FileGDB。问题是我的 excel 工作表包含多个表格。

示例:在第 1 行,我有第一个表的属性。第 2 到 4 行包含这些值。在第 6 行,我有第二个表的属性。接下来的 45 行是值。第三张桌子也是如此。

这些行可以更改。我可以在任何行拥有第二个表的属性。

我认为最好的解决方案是有一个将 .xls 文件拆分为三个不同文件的过程,这样我就可以将它们直接转换为 ESRI 格式。

是否有可以执行此任务的转换器,或者我应该自己用 Python 编写代码?

PS:此过程将从 REST 服务调用,因此我无法手动执行此操作。此外,列名称将始终相同。

谢谢

0 投票
0 回答
368 浏览

python - FMEWorkspaceRunner Python

我正在尝试从独立的 python 脚本批量运行工作区,但它失败了。我特别想知道我是否正确传递了参数。我正在使用带有消息的异常捕获,但它实际上提供的信息较少:

编码:

0 投票
1 回答
753 浏览

javascript - 我可以使用通用方法连接到 socket.io 服务器吗?

我有一个 node.js 服务器,并将 socket.io 侦听器附加到它。代码是这样的。

通常我使用标准方式连接到 websocket 服务器。一个例子是这样的:

它可以毫无问题地工作。现在,我的同事想从他的 FME 服务器连接到 websocket 服务器。根据他的研究,他可以用来连接到 websocket 服务器的唯一方法是使用这样的 url:

我的问题是:有没有办法使用这种类型的字符串连接到 socket.io 服务器侦听器?

如果没有,有没有办法用ws://host:porturl 创建一个 websocket 服务器并将其附加到我的 node.js 服务器?

或者,有没有办法连接到 FME 服务器中的 socket.io 侦听器?

0 投票
1 回答
198 浏览

sql-server - 如何获取 FME 生成的 SQL 语句?

我有一个 FME 工作台,它开始表现不佳。我的预感是它与数据库有关。如何准确确定 FME 发送到数据库的 SQL?我可以与 DBA 联系并执行跟踪;但是它可能无法给我完整的图片。如果可能的话,我更愿意从 FME 获得这些信息。

SQL Server 版本:2012 FME 版本:2017.0.0.2

0 投票
1 回答
230 浏览

ifc - 如何将 IFC 文件转换为室内 GML?

我有带有 LOD2 的 IFC 格式的 3D 建筑模型。

我正在尝试使用 FME 桌面将该模型转换为室内 GML 格式,它导出的是空 XML。

请如果有模板与我分享以及想法或建议也......

0 投票
1 回答
257 浏览

python - Python 逐行执行

我无法使用搜索选项很好地解决这个问题,所以我的问题是:我有一个脚本可以完成这项工作,但仅适用于一个文件。只是为了解释这里发生了什么:

此脚本执行从 AutoCAD DWG (C:\AutoCAD) 转换为 KMZ 文件的 FMW 文件,并将其存储在 C:\Maps_KMZ 文件夹中。现在,我需要对同一源文件夹中的大约 20 个 FME 文件执行相同的操作。是否可以同时执行每个文件并在两次执行之间添加特定的时间范围,比如说它们之间的 2 分钟暂停,因为我不能同时运行 2 个或更多转换,它会使 Windows 崩溃。

非常感谢您的帮助!

0 投票
3 回答
134 浏览

regex - 试图为字符串创建一个正则表达式

我有一个像 Taxi:[(h19){h12}], HeavyTruck :[(h19){h12}] 这样的字符串,其中我想在“:”之前保留信息,即出租车或重型卡车。有人可以帮我吗?

0 投票
2 回答
1320 浏览

gis - FME:如何摆脱重叠的多边形并只保留一个

我遇到了一个与 FME 相关的问题,希望你能帮我解决。

背景: 我正在使用由来自不同来源的数字化多边形组成的要素类。由于许多这些多边形存在不止一次。

问题: 我想摆脱旧的(它们都带有日期)并只保留最新的多边形。

我的解决方案: 我应用了 Spatial Relator,然后添加了 ListSorter 以便按传入日期排序。紧随其后的测试人员测试传入日期是否比相关候选人的日期新。 在此处输入图像描述

输出: 派生要素类包含所有多边形,而不仅仅是最新的多边形。 在此处输入图像描述

谢谢!