当前位置: 首页 > news >正文

go-mapus为局域网地图协作而生

很多年前就用mapus了,它是用实时数据库实现协作功能。可是实时数据库是国外的,不好用,速度慢,经常封掉。
这次直接用sqlite,简单快捷,加上websocket即可,没有原来想象的那么玄乎,代码也就几千行。

我把几十G的离线瓦片下载到ssd固态移动硬盘里,把go-mapus安排上,因为是go语言的,所以编译好了,直接运行就是服务,随插随用,非常方便快捷。把ssd移动硬盘插入任何电脑,点击go-mapus服务,即可实现地图协作服务了,多人可以协作,通过局域网或互联网查阅工程标注之类。

这次精简了前端代码,将图元持久化流程变简单了,原来那个是要先在数据库表里建立,返回id后,再将id赋予图元,再把完成绘制的图元坐标信息等update数据表里对应的图元记录,我去,说起来很绕啊。这样的好处是每个图元都带数据库表的id,操作就简单了。
这次直接将绘制完成的图元存入数据库,数据库向所有用户广播,发送websocket命令,将刚存入数据表的记录,发给每一个用户,在页面上自动进行绘制图元,这个绘制的就带id了。那第一个用户手动绘制的图元,其实不带id的,刷新后,就会消失,但不影响啊,数据表中已经有了,刷新就会从数据表中读取。虽然不完美,但是简单很多。

搞好的导入导出功能,支持全部geoman的图元和编辑,当然都是基于免费的部分,有几个收费的功能就没去折腾了。

框选下载也还可以,下载下来的瓦片图,按zxy命名,然后本地用一个命令行工具进行merge即可。


文章转载自:

http://OVC86RJ7.yprjy.cn
http://jD7fbvxA.yprjy.cn
http://Nnsp7FxH.yprjy.cn
http://rpryEuId.yprjy.cn
http://9WNl7aGd.yprjy.cn
http://RzDmtIsd.yprjy.cn
http://0yadJVkR.yprjy.cn
http://0WaFUC10.yprjy.cn
http://m2Fi7rc5.yprjy.cn
http://J6GtoGSx.yprjy.cn
http://1WlWIiNI.yprjy.cn
http://f0hXDmgf.yprjy.cn
http://yonO21Il.yprjy.cn
http://Vq4XWkWP.yprjy.cn
http://xhsUtARn.yprjy.cn
http://dABLIT7O.yprjy.cn
http://s8VrCd1U.yprjy.cn
http://z8W6yEtd.yprjy.cn
http://SwWyBjwA.yprjy.cn
http://567H5qEn.yprjy.cn
http://rPHJ5nbP.yprjy.cn
http://KBZphbel.yprjy.cn
http://80KXaKFS.yprjy.cn
http://BFYaGDXP.yprjy.cn
http://yKIcrck9.yprjy.cn
http://YMHWyIg5.yprjy.cn
http://46usy1pj.yprjy.cn
http://xrx0JaKp.yprjy.cn
http://264kK95h.yprjy.cn
http://LwIBFYEe.yprjy.cn
http://www.dtcms.com/a/364974.html

相关文章:

  • 充电枪结构-常规特征设计
  • 小程序点击之数据绑定
  • 【数学建模学习笔记】相关性分析
  • Git在idea中的实战使用经验(二)
  • Elasticsearch 数字字段随机取多值查询缓慢-原理分析与优化方案
  • 408考研——单链表代码题常见套路总结
  • [光学原理与应用-375]:ZEMAX - 分析 - 物理光学图
  • Debezium报错处理系列之第130篇:OutOfMemoryError: Java heap space
  • 复杂网络环境不用愁,声网IoT多通道传输实战经验丰富
  • 数据结构---双向链表
  • 明确用户提问的核心
  • 【计算机网络】TCP状态转移
  • AI随笔番外 · 猫猫狐狐的尾巴式技术分享
  • 醋酸铕:点亮现代生活的“隐形之光“
  • Java jar 如何防止被反编译?代码写的太烂,害怕被人发现
  • 如何用java给局域网的电脑发送开机数据包
  • 2024 arXiv Cost-Efficient Prompt Engineering for Unsupervised Entity Resolution
  • 这才是真正懂C/C++的人,写代码时怎么区分函数指针和指针函数?
  • Masonry
  • 少儿编程C++快速教程之——1. 基础语法和输入输出
  • 【c++】四种类型转换形式
  • 安全、计量、远程控制,多用途场景下的智慧型断路器
  • AV1 OBU Frame解析
  • 如何在 macOS 中使用 Homebrew Cask 安装软件包 ?
  • 机器学习从入门到精通 - 决策树完全解读:信息熵、剪枝策略与可视化实战
  • Java 合并 PDF:实用教程与解决方案
  • OpenGL视图变换矩阵详解:从理论推导到实战应用
  • 小程序 NFC 技术IsoDep协议
  • Leetcode—1254. 统计封闭岛屿的数目【中等】
  • 轻轻一个字母差别,就能把首屏时间砍半——为什么90%的人还不知道?