WebGIS管线在线编辑器(电力、水力、燃气、热力、热能管线)

        随着GIS等信息技术的发展,地下管线管理也从二维平面向三维立体管理迈进。传统管线信息管理系统将管线及其附属设施抽象成二维平面内的点、要素,并使用各类点符号、不同颜色线段进行表达。虽能一定程度上满足城市智慧运行的需要,但不能很直观的表现出管线的形状、大小以及管线之间的叠加、包围关系,而使用三维计算机技术对管点管线设备进行空间建模和渲染,不仅直观逼真,并能正确展示竖直管段等二维图形中不便于表示的部件,能够更清楚的识别管线与管点设备之间的连接情况。

        水、电、燃气、热量、信息都在通过各种管线一刻不停地流向城市的每一个角落,那些深埋在地下的管线就是城市的“生命线”。在看不见的城市地下世界,管线运行维护,城市工程规划、设计、施工和管理,城市应急指挥和抢险,能够获取完整、准确、现势的地下管线信息。

gis管线编辑器

        

WebGIS管线在线编辑器

        基于WebGIS的城市电力、水力、燃气、热力、热能管线管理系统需要满足行业对城市地下管线的存储、显示、管理、分析等功能,具体需求如下:
        (1) 提供方便、灵活的地图操作。支撑Web 矢量图形及栅格图形的发布和Web 地图操作,包括地地图的缩放、漫游、鹰眼,地图局部显示,地理定位,线路盘算等功能。提供符合行业规范的管线设施符号系统。
        (2) 提供管线设备管理,包括配电设施、管线的台账管理以及有关设备的相关图片和施工附件管理功能、设备的分层控制、配电设备一次接线图等资料,工作人员可以快
速查询所需资料。
        (3 ) 提供地图数据和属性数据的一体化管理,通过属性资料可以在地图上查询其位置,同时可由地图数据查询出相应的属性资料,方便工作人员查询。
        (4) 提供城市地下管线的分析模块、配电线路的单线图绘制与编辑功能、空间定位分析、管网拓扑等功能。
        (5) 提供地下管道工井剖面图编辑和维护功能,实现管线与管道的关联操作,将电缆与管道的孔位关联功能,实现工井内电缆关系的可视化。 

编辑器GIS引擎加载

const viewer = new Cesium.Viewer("cesiumContainer", {infoBox: false,selectionIndicator: false,
});
const scene = viewer.scene;
const downHandler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas
);
downHandler.setInputAction(function (movement) {const pickedObject = scene.pick(movement.position);if (Cesium.defined(pickedObject) &&Cesium.defined(pickedObject.id) &&Cesium.defined(pickedObject.id.plane)) {selectedPlane = pickedObject.id.plane;selectedPlane.material = Cesium.Color.WHITE.withAlpha(0.05);selectedPlane.outlineColor = Cesium.Color.WHITE;scene.screenSpaceCameraController.enableInputs = false;}
}, Cesium.ScreenSpaceEventType.LEFT_DOWN);// Release plane on mouse up
const upHandler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas
);

点、线编辑

function addBillboard() {Sandcastle.declare(addBillboard);viewer.entities.add({position: Cesium.Cartesian3.fromDegrees(-75.59777, 40.03883),billboard: {image: "../images/Cesium_Logo_overlay.png",},});
}function setBillboardProperties() {Sandcastle.declare(setBillboardProperties);viewer.entities.add({position: Cesium.Cartesian3.fromDegrees(-75.59777, 40.03883),billboard: {image: "../images/Cesium_Logo_overlay.png", // default: undefinedshow: true, // defaultpixelOffset: new Cesium.Cartesian2(0, -50), // default: (0, 0)eyeOffset: new Cesium.Cartesian3(0.0, 0.0, 0.0), // defaulthorizontalOrigin: Cesium.HorizontalOrigin.CENTER, // defaultverticalOrigin: Cesium.VerticalOrigin.BOTTOM, // default: CENTERscale: 2.0, // default: 1.0color: Cesium.Color.LIME, // default: WHITErotation: Cesium.Math.PI_OVER_FOUR, // default: 0.0alignedAxis: Cesium.Cartesian3.ZERO, // defaultwidth: 100, // default: undefinedheight: 25, // default: undefined},});
}
const czml = [{id: "document",name: "CZML Geometries: Polygon",version: "1.0",},{id: "redPolygon",name: "Red polygon on surface",polygon: {positions: {cartographicDegrees: [-115.0,37.0,0,-115.0,32.0,0,-107.0,33.0,0,-102.0,31.0,0,-102.0,35.0,0,],},material: {solidColor: {color: {rgba: [255, 0, 0, 255],},},},},},{id: "checkerboardPolygon",name: "Checkerboard polygon on surface",polygon: {positions: {cartographicDegrees: [-94.0,37.0,0,-95.0,32.0,0,-87.0,33.0,0,],},material: {checkerboard: {evenColor: {rgba: [255, 0, 0, 255],},oddColor: {rgba: [0, 128, 128, 255],},},},},},{id: "greenPolygon",name: "Green extruded polygon",polygon: {positions: {cartographicDegrees: [-108.0,42.0,0,-100.0,42.0,0,-104.0,40.0,0,],},material: {solidColor: {color: {rgba: [0, 255, 0, 255],},},},extrudedHeight: 500000.0,closeTop: false,closeBottom: false,},},{id: "orangePolygon",name: "Orange polygon with per-position heights and outline",polygon: {positions: {cartographicDegrees: [-108.0,25.0,100000,-100.0,25.0,100000,-100.0,30.0,100000,-108.0,30.0,300000,],},material: {solidColor: {color: {rgba: [255, 100, 0, 100],},},},extrudedHeight: 0,perPositionHeight: true,outline: true,outlineColor: {rgba: [0, 0, 0, 255],},},},{id: "bluePolygonWithHoles",name: "Blue polygon with holes",polygon: {positions: {cartographicDegrees: [-82.0,40.8,0,-83.0,36.5,0,-76.0,35.6,0,-73.5,43.6,0,],},holes: {cartographicDegrees: [[-81.0,40.0,0,-81.0,38.2,0,-79.0,38.2,0,-78.0,40.8,0,],[-77.5, 36.7, 0, -78.5, 37.0, 0, -76.5, 39.6, 0],],},material: {solidColor: {color: {rgba: [0, 0, 255, 255],},},},},},
];const dataSourcePromise = Cesium.CzmlDataSource.load(czml);
viewer.dataSources.add(dataSourcePromise);

感兴趣的可以留言或发邮件1985692469@qq.com,欢迎一起交流!

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

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

相关文章

分布式锁简单实现

分布式锁 Redis分布式锁最简单的实现 想要实现分布式锁,必须要求 Redis 有「互斥」的能力,我们可以使用 SETNX 命令,这个命令表示SET if Not Exists,即如果 key 不存在,才会设置它的值,否则什么也不做。 …

mpyboard开发板使用REPL

文章目录 WindowsMacOS XLinux使用REPL提示符重启开发板 REPL是指交互式解释器(Read Evaluate Print Loop),就是一种命令输入交互模式,可以使用命令行的方式与pyboard进行交互。REPL是测试代码和运行命令最简单的方式之一&#xf…

Premiere模板|200个视频标题文字动画pr字幕模板包

Premiere模板,13个类别200个Pr视频标题字幕文字动画模板mogrt包。 几乎适用于任何场景。粗体标题,标注,未来主义和线条标题,下三分之一,霓虹灯,带数字的标题,倒计时,表格&#xff0c…

【爬虫】Selenium打开新tab页截图并关闭

如果说 你曾苦过我的甜 我愿活成你的愿 愿不枉啊 愿勇往啊 这盛世每一天 山河无恙 烟火寻常 可是你如愿的眺望 孩子们啊 安睡梦乡 像你深爱的那样 🎵 王菲《如愿》 在自动化测试和网页抓取中,Selenium WebDriver 是一个强大的工具&…

【Mock|JS】Mock的get传参+获取参数信息

mockjs的get传参 前端请求 const { data } await axios("/video/childcomments", {params: {sort: 1,start: 2,count: 5,childCount: 6,commenIndex: 0,},});后端获取参数 使用正则匹配url /*** # 根据url获取query参数* param {Url} urlStr get请求获取参数 eg:…

【RH134问答题】第十三章 运行容器(下)

系列文章 第一章 提高命令行生产效率 第二章 计划将来的任务 第三章 调优系统性能 第四章 使用ACL控制对文件的访问 第五章 管理SELinux安全性 第六章 管理基本存储 第七章 管理逻辑卷 第八章 实施高级存储功能 第九章 访问网络附加存储 第十章 控制启动过程 第十一章 管理网络…

每天学习一个Linux命令之passwd

每天学习一个Linux命令之passwd 简介 passwd是Linux下用于修改用户密码的命令。它允许系统管理员或用户修改自己的密码,提供了很多选项以满足不同的需求。 命令选项 passwd命令有以下可用选项: -a:显示密码的更改时间和上一次更改密码的…

画图软件diawio

Draw.io | 一款强大且支持在线编辑和导出的流程图绘制神器-CSDN博客 draw.io 免费 好用的流程图绘制软件 - 知乎 (zhihu.com) draw.io (drawio.com)

复试专业前沿问题问答合集7-2——神经网络与强化学习

复试专业前沿问题问答合集7-2——神经网络与强化学习 神经网络与强化学习相关的基础知识问答 Q1: 什么是人工神经网络(Artificial Neural Networks, ANN)? A1: 人工神经网络是一种模仿生物神经网络行为的计算模型,由大量相互连接的人工神经元组成。每个神经元接收输入,…

26. 删除有序数组中的重复项 (Swift版本)

题目描述 给你一个 非严格递增排列 的数组 nums ,请你删除重复出现的元素,使每个元素只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。 考虑 nums 的唯一元素的数量为 k &#xff0…

回归预测 | Matlab基于SAO-BiLSTM雪融算法优化双向长短期记忆神经网络的数据多输入单输出回归预测

回归预测 | Matlab基于SAO-BiLSTM雪融算法优化双向长短期记忆神经网络的数据多输入单输出回归预测 目录 回归预测 | Matlab基于SAO-BiLSTM雪融算法优化双向长短期记忆神经网络的数据多输入单输出回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab基于SAO-B…

ENISA 2023年威胁态势报告:主要发现和建议

欧盟网络安全局(ENISA)最近发布了其年度2023年威胁态势报告。该报告确定了预计在未来几年塑造网络安全格局的主要威胁、主要趋势、威胁参与者和攻击技术。在本文中,我们将总结报告的主要发现,并提供可操作的建议来缓解这些威胁。 介绍 ENISA 威胁态势报告…

CVX安装新版本Mosek求解器

在使用连续凸近似(SCA)求解优化问题时遇到了报错 Problem status : ILL_POSED Solution status : PRIMAL_ILLPOSED_CER并且最后给出的结果为NaN。 在CVX论坛中找到一条回答 具体链接如下: The status is failed 因为我使用的是CVX自带的…

垃圾回收-垃圾回收中的相关概念

目录 System.gc()的理解 内存泄漏(Memory Leak) 内存溢出(OOM) Stop The World 垃圾回收的串行、并行与并发 安全点与安全区域 强、软、弱、虚引用 强、软、弱、虚引用 终结器引用 System.gc()的理解 在默认情况下&#…

嵌入式驱动学习第四周——设备树

前言 掌握设备树是 Linux 驱动开发人员必备的技能!因为在新版本的 Linux 中,ARM 相关的驱动全部采用了设备树。本篇博客重点介绍一下设备树与设备树语法。 嵌入式驱动学习专栏将详细记录博主学习驱动的详细过程,未来预计四个月将高强度更新本…

Vue3的与2的简单区别

Vue2选项式api Vue3组合式API setup方法的使用,最后需要return setup语法糖省略了内部的export default{} 和return 内容 以及组件的注册 reactive生成响应式对象,只能适用于复杂对象,简单类型不可 ref生成响应式数据:复杂类型和简…

电商平台客户反馈的数据分析与应用

目录 写在开头1 客户反馈对产品改进的作用1.1 发现产品存在的问题1.2 提供改进的方向1.3 增强用户参与感 2 数据分析在客户反馈处理中的应用2.1 客户反馈内容的文本分析2.2 情感分析与趋势识别2.3 客户反馈的归类和优先级排序2.4 挖掘隐藏信息 3. 利用客户反馈改进电商运营的案…

详细剖析多线程(更新中...)

文章目录 前言一、认识线程1.1线程概念1.2为什么要有线程1.3线程和进程的区别(经典面试题) 二、创建线程2.1继承 Thread 类,重写run2.2实现 Runnable 接口,重写run2.3继承 Thread 类,重写run,匿名内部类2.4实现 Runnable 接口,重写run&#x…

Linux信号补充——信号捕捉处理

一、信号的捕捉处理 ​ 信号保存后会在合适的时间进行处理; 1.1信号处理时间 ​ 进程会在操作系统的调度下处理信号,操作系统只管发信号,即信号处理是由进程完成的; ​ 1.信号处理首先进程得检查是否有信号;2.进程…

麒麟V10环境部署Docker、JDK以及基础环境配置

麒麟V10环境部署Docker以及JDK 挂载“Windows”下共享目录到虚拟机 # 配置 SHARE_REMOTE_PATH=//192.168.2.10/F SHARE_REMOTE_USR=smb SHARE_REMOTE_PWD=smb SHARE_LOCAL_PATH=/mnt/f# 挂载 mkdir ${SHARE_LOCAL_PATH} sudo mount -t cifs ${SHARE_REMOTE_PATH}