地下管线监控系统中互联网WebGL三维可视化构建技术 ThingJS

简介: 基于ThingJS的通用架构设计随着社会经济的不断发展,城市中的各类地下管线数量不断增加,逐渐构成了结构复杂的地下管网。

三维可视化##3D开发

  1. WebGL 3D技术框架-ThingJS
  2. 三维管线基础数据收集
  3. 三维管线模型分类创建
  4. 三维管线可视化系统开发

在这里插入图片描述

基于ThingJS的通用架构设计随着社会经济的不断发展,城市中的各类地下管线数量不断增加,逐渐构成了结构复杂的地下管网。

传统二维平面管线管理系统,对于地下管线应急事件的处置历来是一个痛点。提高应急处置现场的可视性,更直观地反映地下管网的空间分布情况,三维可视化技术能够很好解决这一问题。近年来,地下管线管理系统逐步由传统C/S架构向B/S架构过渡,现阶段的监控管理对于复杂场景的轻量化展示是一个主要趋势。

WebGL 3D框架-ThingJS

WebGL是基于OpenGL(开放图形库)协议在Web浏览器中进行3D渲染的API,是一个基于纯B/S架构开发的技术。ThingJS是基于WebGL的3D框架,【官方注册地址】用于制作基于场景的轻量化三维可视化对象;将地下管线场景在Web环境中进行重构渲染、着色化,通过ThingJS技术引擎开发三维动画和交互功能,实现了地下管线的漫游及模型的交互控制。

本文梳理了ThingJS的地下管线可视化应用构建方法,简单说明这一实现过程。

三维管线可视化工作主要分为基础数据收集、三维模型建立和三维管线系统建设三大部分。

1. 三维管线基础数据收集

三维建模基础数据主要包括矢量数据、影像数据及管线数据等相关数据。
1) 矢量数据:主要使用地形图及局部修测的带状地形图,确定各自的比例。
2) 影像数据:采用了彩色卫星影像图,选择最近的更新版本,其分辨率为0.8m。
3) 管线数据:管线图及管线信息调查表。

本项目将城市地下管线分为给水、排水、燃气、热力、工业、电力和电信管线7大类。各大类还可以细分,如给水管线包括工业给水、生活给水和消防给水管线;排水管线包括污水和雨水管线。管线的基本几何数据可归纳为管线端点、结合点、变径点与附属设施特征点,此后统称为管点数据。

管线形状多为树枝状、环状或辐射状,每一条管线可以根据交叉点和变径点分解成若干条管线段,交叉点处模拟现实情况,以三通、四通、阀门或变径接头等附属设施相连接。管线段由相应管点数据连接,组成一条不间断的管线段。因此,每一条管线可以抽象为由管线段和附属设施组成。
在这里插入图片描述

2. 三维管线模型分类创建

结合具体城市地形,我们将三维模型分为地形模型、道路模型和管线模型三大类。

1) 地形模型

地形模型主要是指表示地表起伏形态的三维模型。通过3DSMAX可以构建不规则三角格网(TIN),并将等高线生成三维模型,最后与一一对应的正射影像数据叠加生成分块的地形模型。注意将三维模型细分成若干块,可以应对后期制作范围不断扩大、数据不断更新的问题。

2) 道路模型

道路模型是指制作区域内所有等级公路及主次干道的模型。由于最终要将道路模型与管线模型进行叠加故对道路模型的精度要求较高。先按属性码筛选出等级公路及主次干道,并对同一道路进行封闭面处理,然后将数据导入CityBuilder直接进行转为面的操作,形成道路面的平面模型;再利用高程点对平面模型进行高度控制,形成道路的三维模型。

3) 管线模型

3DSMAX中导入相应的管线DWG文件利用管道建模命令直接生成带管径的各类管线模型,最后按各类管线颜色要求创建的贴图,分别赋予不同类型的管线模型;而对于管点模型由于重覆度较高,且每一个独立的模型面数较多,我们采用了利用数据库的建模方法,这样既减少了数据量,又在很大程度上提高了工作效率。

本项目建立了地下管线数据库,设计了管点、管段、官网层等数据结构。
在这里插入图片描述

3. 三维管线可视化开发案例

基于B/S架构设计地下管线三维管理系统,利用ThingJS搭建浏览器端的三维场景,在场景中加载三维管线模型,搭建渲染管线模型、地形模型、双向选择、鼠标拾取等基础功能;同时实现了用户的交互操作,包括模型加载、管线编辑、管线的查询与分析、管线定位等交互功能。技术路线图如下:
在这里插入图片描述

现在还原一个小区水,电,天然气管线可视化,【官方注册地址】,在线查看demo:

3D演示 - 三维地下管线的可视化应用 ThingJS
​在这里插入图片描述

第一步,利用CampusBuilder搭建模拟场景。CampusBuilder的模型库有各种各样的模型,使我们搭建出的场景更逼真。使用CampusBuilde创建层级,之后再给层级加外立面就出现了当前的效果。
第二步, 初始化摄像机位置,添加四个按钮,并创建四个方法。
第三步,创建管线,水管线、电线、燃气管线同理。这里简单说一下PolygonLine,它继承THING.LineBase,同样有贴图属性,可以自己从本地上传图片至页面资源后使用。

这里用到了两个方法:
1) buildingOpacity(num);
这个方法的主要作用就是为了将场景虚化,更好的展示我们的管线。
2)renderOrder();
这个方法先在代码中注释掉了,看一下“糊了的”效果:
在这里插入图片描述

如果没有设置renderOrder();属性的 ,管线的渲染层级没有building高 ,就会导致有被building遮盖的PolygonLine无法正常显示,设置renderOrder();属性后,渲染效果正常。

所以这才是“正确显示”的效果:
在这里插入图片描述
最后一步,创建出电线以及燃气线,效果如下:
在这里插入图片描述
地下管网的管理水平是体现一个城市的发展程度和现代化管理的重要标志之一。三维管线可视化系统的建立便于相关职能部门准确地掌握城市地下管线现状,有助于避免市政建设中道路的多次开挖,大大降低了施工中地下设施的矛盾与事故隐患。

ThingJS是一种轻量级前端应用3D框架,通过WebGL技术API接口,可实现跨终端跨平台的访问,使得管理中心与外部移动端能够交互协作,促进地下管线管理手段快速发展。

在这里插入图片描述

相关文章
|
域名解析 应用服务中间件 网络安全
|
9月前
|
人工智能 自然语言处理 机器人
保姆级教程:阿里云及本地部署OpenClaw(Clawdbot)集成QQ机器人等Skills指南
2026年,OpenClaw(原Clawdbot)作为开源轻量级AI智能体框架,凭借插件化扩展、双部署兼容、自然语言驱动的核心优势,成为个人与中小企业搭建QQ机器人的首选工具。它既能通过本地私有化部署保障数据隐私,适配内网办公、私人助手等场景,也能在阿里云上实现7×24小时稳定运行,支撑QQ群管理、智能客服、自动化任务执行等高频需求,无需复杂开发,零基础也能快速落地专属QQ机器人,实现“QQ聊天窗口下达指令,AI自动完成任务”的轻量化交互模式。
3191 22
|
9月前
|
人工智能 小程序 数据安全/隐私保护
2026年零基础部署OpenClaw(Clawdbot)集成微信小程序保姆级教程
2026年,AI自动化工具已深度渗透到私域运营、个人办公、中小企业服务等各类场景,OpenClaw(前身为Clawdbot、Moltbot,三者为同一套AI网关系统的不同命名迭代,旧名相关操作命令完全兼容)凭借轻量化容器化架构、灵活的插件扩展能力、自然语言驱动的任务执行效率,以及对多平台的无缝适配特性,成为新手与中小企业打造专属AI助手的首选工具。微信小程序作为国民级轻应用载体,无需下载安装、触达便捷、覆盖全年龄段用户,且依托微信生态实现流量闭环,将OpenClaw与微信小程序深度对接,可快速解锁“小程序发指令、AI自动化执行、实时反馈结果”的核心体验,适配私域客户服务、智能咨询、办公提效、内
2638 2
|
人工智能 自然语言处理 前端开发
构建AI智能体:六、体验Trae指定Qwen-Turbo模型自动生成问答系统
本文介绍如何使用字节跳动的AI编程工具Trae与阿里通义千问Qwen-Turbo模型,快速生成一个智能问答系统。通过图文结合方式,演示从环境搭建、指令生成到界面优化的全过程,涵盖前后端代码自动生成、模型调用封装及交互优化技巧,展现AI辅助开发的高效与趣味,助力开发者提升生产力。
2273 12
|
9月前
|
人工智能 自然语言处理 搜索推荐
企业有哪些agent应用场景
随着大模型成熟,AI智能体(Agent)加速落地企业五大核心场景:营销、客服、数据分析、运营与电商。瓴羊基于“AgentOne”平台,打造Quick Audience、Quick Service等系列Agent产品,深度融合业务与数据,推动Agent从“可用”迈向“好用”“必用”,重塑企业生产力结构。(239字)
|
监控 前端开发 Java
SpringBoot集成Tomcat、DispatcherServlet
通过这些配置,您可以充分利用 Spring Boot 内置的功能,快速构建和优化您的 Web 应用。
1404 21
|
SQL 数据库
SQL-serve数据库不能连接本地服务器的解决方案
SQL-serve数据库不能连接本地服务器的解决方案
1772 1
|
算法 编译器 C++
【狂热算法篇】探秘图论之Dijkstra 算法:穿越图的迷宫的最短路径力量(通俗易懂版)
【狂热算法篇】探秘图论之Dijkstra 算法:穿越图的迷宫的最短路径力量(通俗易懂版)
|
安全 数据建模 网络安全
什么是二级等保,以及二级等保的SSL证书了解一下
根据国家网络安全等级保护标准,网络安全保护分为五个等级,其中第二级称为二级等保。二级等保适用于对公民、法人和其他组织的合法权益造成严重损害或对社会秩序和公共利益造成危害的情况。为了满足二级等保的要求,需要使用支持SSL协议且具备完整性和保密性保护的SSL证书,推荐使用由全球可信CA机构签发的OV或EV SSL证书。
|
网络安全 开发工具
搭建麒麟桌面操作系统V10 SP1 2303
【7月更文挑战第15天】通过搭建麒麟桌面操作系统V10 SP1 2303的内网仓库,您不仅可以提高软件安装和更新的速度,还能增加网络的安全性。
2214 2