原标题:在 Workbench中提取和使用日志信息

·FailTruncated.fmw

·GetAffineParameters.fmwt

·DGNMetadata.fmwt

二、使用Python FMELogFile对象

在启动和关闭Python(位于Workbench中工作空间参数-Advanced中)中可以使用FMEObjectsPython API,与PythonCaller和PythonCreator 一样。其中一个可用的对象是FMELogFile,它提供了访问Workbench日志的功能。多数FMELogFile方法用于在日志中添加信息,但是setCallBack方法允许你发送所有日志信息的副本到你的函数中。这使你可以在创建日志信息时对其进行解析,并在允许时将这些消息中的信息传递给工作空间中的要素。

下面三个例子展示了在工作空间运行期间日志信息的一些可能的用途。

三、应用案例3.1促进对失败的警告

一个用户发现他的一些MicrostationDGN文件被中断。通常,FME遇到中断文件只会在日志中发布警告,但不会转换失败。用户希望截断的文件发生失败,以便与正确的文件区分开。

·FailTruncated工作空间中的Startup Python对每个日志文件搜索截断的DGN文件警告,找到后设置一个标记。

·所有DGN要素读取完成后, Creator转换器在流程结束时,创建一个新的要素,

·把新要素发送到PythonCaller,通过代码检查是否设置了中断标记。如果有标记,工作空间终止。

·PythonCaller输出连接到NULL写模块,该写模块设置为与工作空间中的第一个写模块。

·第二个DGN写模块直到工作空间完成才进行写出,所以如果工作空间终止则不会有文件写出。

3.2提取文件或表的元数据

Workbench读模块通常在日志中包括文件或表的元数据,但是不会把信息添加到从文件中读取的要素中。DGNMetadata示例从文件夹中的所有MicrostationDGN文件中提取GlobalOrigin,Master和Sub单元名称和比例,并将此信息输出到Excel文件。

·工作空间中的StartupPython使用正则表达式从读模块日志信息中提取GlobalPrigin和工作空间单位参数,并把它们存储到global列表中。

·每个DGN文件只读取一个要素(把读模块参数- Advanced- Max Features to Read 设置为1)。

·使用FeatureHolder确保后续处理之前,读取了所有DGN文件。

·PythonCaller使用multi_reader_id 通用属性把每个要素连接到它的元数据。这个属性包含了每个文件的读取顺序,并对应于元数据Python列表的索引。

·重命名属性,然后将要素写出到Excel。

输出:

3.3保存中间转换器的参数

AffineWarper转换器通过输入的控制矢量要素计算了一个最佳拟合的仿射变换,然后将它们应用到observed端口的要素中并输出。计算的参数在日志中被记录,但是没有存储在转换的要素上。GetAffineParameters示例提取这些参数到CSV文件中供选择使用。

·从CSV文件中读取数据并转换为矢量

·矢量发送到AffineWareper并用于转换虚拟点

·工作空间中的StartupPython使用正则表达式从AffineWarper日志信息中提取仿射变换参数

·仿射变换完成后,在进程后使用Creator_2转换器创建一个新的要素

·PythonCaller将仿射参数添加到要素,然后写入到CSV中

责任编辑:

python显示dgn_在 Workbench中提取和使用日志信息相关推荐

  1. 基于ESO的永磁同步电机无感FOC 采用线性扩张状态观测器(LESO)估计电机反电势,利用锁相环从反电势中提取位置和转速信息

    基于ESO的永磁同步电机无感FOC 1.采用线性扩张状态观测器(LESO)估计电机反电势,利用锁相环从反电势中提取位置和转速信息,从而实现无位置传感器控制: 2.提供算法对应的参考文献和仿真模型. 购 ...

  2. 生物信息中的Python 05 | 从 Genbank 文件中提取 CDS 等其他特征序列

    1 介绍 在基因结构分析或其他生物功能分析中会时常用到 CDS 序列,以及其他诸如 mRNA 序列,misc RNA序列等具有生物意义的序列片段.而NCBI 的基因库中已经包含有这些的信息,但是只有一 ...

  3. 【Python】批量从doc简历中提取出需要的信息

    最近帮公司HR从智联招聘下载简历录入信息,写了个小程序自动录入. 第一步 把doc文件转为txt文件 因为doc文件中嵌套大量隐藏表格,超链接之类的格式,用docx这个库读取时很多信息显示不出来(也可 ...

  4. python提取excel表中的数据_用python从excel工作表中提取和操作数据

    场景:我正在尝试编写一个python代码,它读取给定文件夹中的所有工作簿,获取每个工作簿的数据并将其放入单个数据帧中(每个工作簿都成为一个数据框,因此我可以单独操作它们).在 问题1:对于此代码,即使 ...

  5. Python:如何从字符串中提取字母或数字?

    从字符串中提取字母 s = 'cn中国520' print(''.join([i for i in s if i.encode('UTF-8').isalpha()]))# 输出:cn 注意:中文的汉 ...

  6. python:dlib在视频流中提取面部特征点

    下载dlib库 这个库下载起来巨巨巨巨巨麻烦(当然不排除你运气比较好,一下子就成功了),具体下载方式请参考别的文章. 视频流中提取面部特征点 写在主循环之前: import numpy as np i ...

  7. 【提取新闻主要内容之一】从具体的新闻网页中提取标题和作者信息

    后续之[提取新闻列表并关联具体新闻内容] Задача: Используя Python и модуль requests и bs4 написать скрипт, извлекающий н ...

  8. 如何在Unity控制台中输出第三方C# dll中的Console.Writeline日志信息

    最近在做项目的时候有一个功能需要调用第三方C#库中的方法,虽然执行起来也都没有什么问题, 但是某些情况下,为了调试需要,希望能够输出C#库中的Log信息,方便排查. 但是C# dll中输出日志时都是使 ...

  9. 在三台Redis节点上部署哨兵集群以及主备切换、故障恢复的容灾演练中哨兵各自的日志信息、状态查看分析

    1. 创建哨兵的配置文件 先在 /etc 目录创建一个sentinel目录作为哨兵的配置信息存放目录,并将Redis安装目录的sentinel.conf文件(我这边路径是 /usr/local/red ...

最新文章

  1. 高校“花式查寝”到底多有意思?
  2. cocos2dx 3.3 final 自定义事件 ---- EventListenerCustom
  3. mfc清空数组_MFC数组的使用
  4. Windows 平台下 Go 语言的安装和环境变量设置
  5. 【人物】互联网教父KK:对未来要有自信,未来是我们的
  6. MySQL笔记之视图的使用详解
  7. 后端:MyBatis缓存知识介绍
  8. epic转移游戏_Epic游戏商城更改退款政策 和steam一模一样
  9. API Gateway——KONG简单入门
  10. c++ string类_C++|细说STL string类概貌及底层细节
  11. 物联网流行协议-MQTT
  12. Appium+python自动化(十一)- 元素定位秘籍助你打通任督二脉 - 下卷(超详解)...
  13. Linux CAT与ECHO命令详解 <<EOF EOF
  14. uniapp使用iconfont图标
  15. 单细胞测序数据挖掘与课题设计
  16. 人民币大小写转换(php版),JavaScript实现人民币大小写转换
  17. 【渝粤题库】陕西师范大学201591 中国古代文学(二)作业(高起本)
  18. 库存遮羞布被揭开,高通提前发布骁龙8G2,国产手机已无路可走
  19. mysql点餐系统源码免费_基于Java+MySQL的餐厅点餐系统.zip
  20. python 实现获取与下载网页中图片的四种方案

热门文章

  1. 防火墙策略管理-firewalld
  2. [83]Windows下同时安装python2、python3和pip2、pip3设置
  3. 2019年最受欢迎的手机App
  4. Python GUI图形界面
  5. 初中化学骨干教师培训需求调查分析--以贵州师范学院国培计划为例
  6. 蓝桥试题 算法提高 打包(二分法,最大值最小化)
  7. C# 实现SHA256加密
  8. null blob mysql_图像存入MySQL数据库longBLOB出错
  9. 记一次qq互联回调报错
  10. Dev C++开发环境的配置及使用