问题:

  1) 项目应用中要求将CAD规划成果合理的入库GIS SDE中,在建立一套比较规范的标准为前提下,如何“低技术、傻瓜式”实现规划数据更新管理、版本化是个迫切难题。

  2) CAD作为数据源,不同于其他直接以GIS作为数据源,有一个转换过程,转换存在语义、元数据、模式等相关方面问题,势必会造成数据一定程度的丢失、损坏,如何最低限度降低这种损坏同时合理的进行数据转换也是需要考虑的。

  3) 项目运用追求产品化,建立CS桌面模式的一对一还是建立BS网络模式的一对多,根本上还是以需求为指导,那么如何将转换过程是以桌面方式还是以服务方式进行尚需考虑。

分析:

FME作为转换利器,可直接写脚本,可直接写插件,可二次开发,可发布服务,所有都以FME Engine为核心,体现在FME Desktop和FME Server上。

1

FME Desktop开发有2种:FMEObjects和FMEPlugin,结构:

图1 FME Desktop软件结构

1)       FME Objects基本支持各种常用开发语言,开发的软件工具必须要在FME Runtime下才能运行,就是说要安装FME Desktop才能运行。

2)       FME Plugin可自定义扩展新的格式和转换器,如可开发自己一种扩展名为“.yzz”格式并设置对应的数据转换,开发函数类似于FME的上百种转换函数。

此形式开发需要开发人员需要一定的编程经验,而且也不是3-5天就可以做的出,根据不同应用对应着不同的目标结构,可能随时需要修改相关参数,难度大,任务重。

2

发布服务也分2类:FME Server和FME托管Amazon的云服务

     FME Server是用于网络的转换器,可以将开发的FME脚本发布称REST服务,为基于FME Workpace(模型)的调用。 使用FME Workbench建模并保存为模型文件,或者发布为一个基于Web的服务,应用系统对模型文件或服务的调用类似对一个管道进行操作,需要关心的只是输入和输出。

图2 FME建模实施过程

    此种只需开发人员协调,以实施人员为主体,当服务发布制定后,第三方人员根据服务进行在线数据转换、提取、下载,可实时进行数据同步更新。

FME云服务作为最新一种,以亚马逊为平台,提供PAAS,意指:将FMEServer部署在云环境中,其他措施和FMEServer一样,收费甚少。

解决探讨:

1)       FMEObject C#开发,基于单机扩展,可灵活控制转换过程与步骤,也可执行脚本转换,但开发周期长,灵活性较差,没有通用性。

2)       FMEPlugin,只支持C++和Java,扩展难度极大,但针对某个特定项扩展成功则类似于使用某种软件成品,一般无特殊要求不推荐。

3)       FME脚本发布服务,由开发人员或技术支持、实施人员进行脚本开发,制作待需特定脚本,将其发布到FMEServer中,客户只需输入输出即可,无需关心转换过程,要求授权FMEServer和熟练FME服务使用。(详细待续)

总结

CAD规划成果转换入库GIS SDE,小批量可由开发人员或实施人员进行手动转换,但随着应用展开和项目需求,有自动化软件工具有必然性。FME脚本制作一定程度上依赖对CAD数据的把握和目标数据的需求,同时对转换经验和熟练也有一定要求,合理的做到快捷、损坏少、便于管理,个人意见:开发人员根据规范开发FME脚本,对数据更新、管理、同步版本化进行相关测试,而后通过FMEServer发布脚本,在局域网或互联网公开服务地址,在应用不断积累中完善服务性能,客户最终使用服务完成数据转换。

    说明:总结分析仅供参考,详细设计以实际锻炼为主。

参考:

[1] FME2011帮助文档;

[2] 安图163官方博客

CAD规划成果入库GIS_SDE转换之分析的更多相关文章

  1. Logstash:Data转换,分析,提取,丰富及核心操作

    Logstash:Data转换,分析,提取,丰富及核心操作 Logstash plugins Logstash是一个非常容易进行扩张的框架.它可以对各种的数据进行分析处理.这依赖于目前提供的超过200 ...

  2. CAD图DWG解析WebGIS可视化技术分析总结

    背景 AutoCAD是国际上著名的二维和三维CAD设计软件,用于二维绘图.详细绘制.设计文档和基本三维设计.现已经成为国际上广为流行的绘图工具..dwg文件格式成为二维绘图的事实标准格式. 但由于Au ...

  3. Python 温度转换实例分析

    #TempConvert.py Tempstr=input('请输入要转换的温度值:') if Tempstr[-1] in ['C','c']: F=1.8*eval(Tempstr[0:-1])+ ...

  4. Python学习之温度转换实例分析篇

    #TempConvert.py Tempstr=input('请输入要转换的温度值:') if Tempstr[-1] in ['C','c']: F=1.8*eval(Tempstr[0:-1])+ ...

  5. python温度转换代码分析

    将用户输入的温度信息保存在TempStr变量中 if分支条件,判断TempStr类型是否在f及F列表之中 如果用户输入的在f及F列表之中,则用户输入的是一个华氏温度值,对华氏温度进行摄氏温度的转换,e ...

  6. FME之于规划CAD数据质量检测

    最近琢磨规划CAD数据转换入库GIS方面的技术问题,看过一些前辈的文章/文献,对于使用FME WorkBench方面,有了一些了解,往往直接转换数据丢失比较严重,而且GIS对图形属性和空间拓扑比较严格 ...

  7. FME规划数据GIS更新入库

    规划数据经过转换处理入库GIS,城市规划的特殊性,使得GIS里面数据经过分析处理后直接导出为CAD数据的话,肯定难以满足原来规划的要求,这个是硬伤.又要用GIS来进行空间分析处理统计,数据管理就必须了 ...

  8. cad快捷键与命令大全

    一入绘图深似海,从此各种快捷键就要不分昼夜在脑海,忘记了哪一个,对于效率来说都是一个考验. 快捷键用处怎么大,那么的实用,需要背诵哪些呢?史上最全快捷键汇总,大神都在使用快捷键操作,这里给你来一个大汇 ...

  9. 2019年ArcGIS规划专业专项培训(四天)

    2019年ArcGIS规划专业专项培训(四天) 商务合作,科技咨询,版权转让:向日葵,135-4855__4328,xiexiaokui#qq.com   第一天:GIS入门 第一章 GIS概述及其应 ...

随机推荐

  1. js中原型的概念

  2. Android(Logcat、Monitors)

    刚学习Android 的时候总喜欢输出"Hello Word"这样的信息来判断是不是执行了某个方法,最初连Android Studio控制台.断点这些在哪里都要找好久,现在好了多点 ...

  3. 未能加载文件或程序集EntityFramework, Version=6.0.0.0解决办法

    其他信息: 未能加载文件或程序集"EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934 ...

  4. shell编程之运算符

    declare声明变量类型 declare    [+ / -] [选项]  变量名 - :给变量设定类型属性 + :取消变量的类型属性 -a :将变量声明为数组型 -i :将变量声明为整数型 -x ...

  5. nth_element 测试程序

    /******************************************************************** created: 2014/04/29 11:35 file ...

  6. Light OJ 1031 - Easy Game(区间dp)

    题目链接:http://www.lightoj.com/volume_showproblem.php?problem=1031 题目大意:两个选手,轮流可以从数组的任意一端取值, 每次可以去任意个但仅 ...

  7. 【转】Oracle Database PSU/CPU

    转自: http://www.cnblogs.com/ebs-blog/archive/2011/07/28/2167232.html 1. 什么是PSU/CPU?CPU: Critical Patc ...

  8. VaR实现实证

    投资组合Var计算实例 http://financetrain.com/analytical-approach-to-calculating-var-variance-covariance-metho ...

  9. C#发送邮件

    以下代码已用 .yeah .qq 以及本人公司邮箱测试通过,可多发,可挂附件 本次测试邮件发送类,是用的winform 页面如下 窗口的后台代码如下: using System; using Syst ...

  10. jQuery管理包装集笔记

    size():返回包装集中元素的个数. get([n]):返回一个DOM元素或DOM元素数组(接受负值). toArray():将包装里的所有元素作为DOM元素数组返回. eq(n):获取包装集中与i ...