基于FME二开产品:NewGIS integration介绍

news2024/11/25 2:56:14

目录

前言

一、模板上传

二、模板在线运行

1.模板参数解析

2.模板运行

三、成果管理

总结


前言

        爆肝两个月,我和我的团队终于打造出了一款能完美适配所有FME模板的在线模板管理平台,目前支持FME2021版本的所有模板的在线运行、管理。整体技术框架前端Vue ,后端Go语言实现。


一、模板上传

整体界面如下

点击上传按钮,弹出上传表单

 有些模板是有config依赖的,上传的时候将config和fmw打包在同一压缩包上传即可,后端会根据情况自动解压并配置config。

二、模板在线运行

1.模板参数解析

        点击运行按钮,后端会根据上传的FMW,解析其运行参数,并过滤私有参数,映射成前端的动态表单。忽略所有写模块,写模块由后端统一配置,后端会将写模块将所有写出的内容打包成zip提供下载。需要注意的是为保证shp,gdb等碎文件数据的完整性,统一要求上传为zip,rar压缩包格式。

 

2.模板运行

        模板是通过Go语言底层接入FMEAPI实现,对比BAT调用的方法耦合性更高,启动速度更快,并且能动态获取模板运行情况。并发通过Go语言的channel和goroutine实现,因为go语言天生自带高并发以及其本身优越的性能,后端能实现百万级的任务管理。

   模板运行分为3个状态,分别为:队列中,运行中,已完成。运行完成后点击成果预览。

         完成后状态更新,同时下载按钮可用,如果部分模板没有写模块参数,则下载按钮为不可用。

 

三、成果管理

可以在模板外部查看该模板是否有任务在运行,每使用一次模板,则运行次数+1

 点击下载按钮,自动下载zip成果包

 


 

总结

        基于fmedesktop2021.2版本开发,目前只是一个雏形,后期会增加在线网络接口配置,将模板配置为web后端接口,并增加权限管理功能,统计分析功能等。欢迎精通FME,又精通go语言的小伙伴加入我们的团队完成该产品的开发。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/770767.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++基础算法排序篇

📟作者主页:慢热的陕西人 🌴专栏链接:C算法 📣欢迎各位大佬👍点赞🔥关注🚓收藏,🍉留言 主要讲解C算法中所涉及到的两个排序算法,快排和归并。 文章…

请问支付功能如何测试

目录 01测试思维 02支付功能的测试点 一:支付的分类: 二:功能测试 三:接口测试 四:安全测试 五:测试点 01测试思维 要分析测试点之前,我们先来梳理一下测试思维。总结来说,任…

字符串编程练习(C++)

ex1 字符串变形 描述 对于一个长度为 n 字符串,我们需要对它做一些变形。 首先这个字符串中包含着一些空格,就像"Hello World"一样,然后我们要做的是把这个字符串中由空格隔开的单词反序,同时反转每个字符的大小写。…

【java】IntelliJ IDEA创建helloworld

目录 一、安装jdk17 二、安装InterliJ IDEA 2023.1.4 三、创建项目 四、创建模块 五、创建包 六、创建类 七、开始hello world 7.1 输入 psvm 7.2 输入sout 八、运行 九、IDEA 设置 9.1 主题 9.2 字体 9.3 背景色 十、快捷键 十一、导入模块 11.1方式一 1、先…

如何在无人机支持下完成自然灾害风险评估的原理和方法

对灾害的损失进行估算与测算是制定防灾、抗灾、救灾 及灾后重建方案的重要依据。 自然灾害评估按灾害客观地发展过程可分三种:一是灾前预评估,二是灾期跟踪或监测性评估,三是灾后实测评估。 灾前预评估要考虑三个因素,第一是未来…

将 QtPropertyBrowser 加入到 vs2015 qt版中工程中

我是直接将QtPropertyBrowser的所有文件当子文件夹全部加入到工程里的 加完之后,ok,编译错误 出现一堆以下错误,我只拿出一条 moc_qtbuttonpropertybrowser.cpp(94): error C2027: 使用了未定义类型“QtButtonPropertyBrowserPrivate” 然…

二级市场负重前行?腾讯音乐的“新伤”与“旧患”

炎炎夏日的7月,于腾讯音乐(NYSE:TME、HK:01698)而言并不太平。 先是,在7月5日,企鹅FM发布官方公告称由于业务调整,将于9月6日正式停止运营。 仅过十二天,7月17日,腾讯音乐发布公告&…

【Vue】报错:this.$refs 引用子组件报错 is not a function

文章目录 报错信息解决方法 报错信息 this.$refs.selectTree.onHide is not a function 解决方法 确保组件成功导出并挂载: - 子组件需要 import,import 是请确保路径正确import selectTree from /components/select-tree; - import 之后还需要在父组件的 comp…

ES6新增运算符

?. 可选链运算符 一个对象的属性,如果这个属性是对象,它还有子属性,访问这个子属性,比如 var obj {a: {key: val}} console.log(obj.a.key) // val 如果属性不存在的时候,则有可能会报错。 var obj {key: val} c…

预处理详解(一)---预定义符号

文章目录 预定义符号预定义符号的使用 预定义符号 在C语言中,有一些有意思的预定义符号,这些预定义符号都是语言内置的,即以及定义好的,我们可以直接使用。预定义符号主要有以下几个: __FILE__ //进行编译的源…

Windows安装激活注意事项

选择语言、版本(Windows 10指的是专业版本)和体系结构(32位/64位),这里自行根据情况选择(如果机器预装的是Windows 10家庭中文版则选择家庭中文版,如果预装的是专业版则选择Windows 10。这样原先…

vue(html,css,vue2,vue3) 学习总结

文章目录 小白 Vue 3 学习一些名词软件安装 VSCode 中的一些设置1. 关闭eslint检查tsconfig.json 配置文件2. ts 文件引用报红 相对路径写法常见图片格式和区别目录结构JS/TS1. prototype(原型对象)2. 导入/导出3. 去除字符串两端空格4. 一些特殊语法糖5. 深拷贝6. 拼接两个数组…

openGauss学习笔记-14 openGauss 简单数据管理-查看对象

文章目录 openGauss学习笔记-14 openGauss 简单数据管理-查看对象14.1 查看命令帮助信息14.2 切换数据库14.3 查询所有数据库14.4 查询当前数据库中的所有表14.5 查看表结构 openGauss学习笔记-14 openGauss 简单数据管理-查看对象 gsql工具提供了若干高级特性,便于…

Linux 漏洞扫描

Linux 漏洞扫描程序会仔细检查基于 Linux 的系统,以减轻潜在的风险和漏洞。 什么是 Linux 漏洞扫描程序 Linux 漏洞扫描程序是一种专门的漏洞扫描工具,旨在识别基于 Linux 的系统中的安全漏洞和弱点,它会扫描配置错误、过时的软件版本和已知漏洞。 为…

UG\NX二次开发 捕获NX OPEN C++异常,乱码问题

文章作者:里海 来源网站:https://blog.csdn.net/WangPaiFeiXingYuan 简介: 捕获NX OPEN C++异常,乱码问题。 效果: 使用uc1601(ex.what(),1)显示乱码 使用 NXMessageBox()->Show("Block Styler", NXMessageBox::DialogTypeError, ex…

Selenium(3 + 4 超级详细笔记)

文章目录 selenium(web自动化测试)1. selenium初始化(2种)2. chrome 启动参数(3种)3. 八大定位方式3.1 css 定位3.2 xpath 定位3.3 link_text 定位3.4 partial_link_text 定位3.5 relative 相对定位 4. 添加…

uniapp动态获取列表中每个下标的高度赋值给另一个数组(完整代码附效果图)

uniapp实现动态获取列表中每个下标的高度&#xff0c;赋值给另一个数组。 先看效果图&#xff1a; 完整代码&#xff1a; <template><div class""><div class"">我是A列表&#xff0c;我的高度不是固定的</div><div class&qu…

DDOS百科:什么是 DDoS 攻击及如何防护DDOS攻击

一、什么是 DDoS 攻击&#xff1f; 当多台机器一起攻击一个目标&#xff0c;通过大量互联网流量淹没目标或其周围基础设施&#xff0c;从而破坏目标服务器、服务或网络的正常流量时&#xff0c;就会发生分布式拒绝服务(DDoS)攻击。 DDoS允许向目标发送指数级更多的请求&#…

Revit 导出明细表的两种方法!

方法一、Revit中怎么灵活运用明细表格式的导出与导入 在做项目的时候&#xff0c;遇到一些项目需要进行工程量统计的时候&#xff0c;经常需要设置明细表里面的格式&#xff0c;例如字体、表格排布样式等&#xff0c;但是项目一旦多起来&#xff0c;这些工作重复性又太高&#…

云计算和云架构是什么 有什么用途?

云计算是一种基于互联网的计算方式&#xff0c;它通过网络将计算资源(如计算能力、存储、网络带宽等)以服务的形式提供给用户&#xff0c;并允许用户根据需求进行灵活的资源调配和管理。云计算通常分为三个层次&#xff0c;即基础设施即服务(IaaS)、平台即服务(PaaS)和软件即服…