前言

  中共中央、国务院在今年12月印发了《长江三角洲区域一体化发展规划纲要》(下文简称《纲要》),并发出通知,要求各地区各部门结合实际认真贯彻落实。

  《纲要》强调,要提升基础设施互联互通水平,打造数字长三角,协同建设新一代信息基础设施,共同推动重点领域智慧应用。大力发展基于物联网、大数据、人工智能的专业化服务,提升各领域融合发展、信息化协同和精细化管理水平。围绕城市公共管理、公共服务、公共安全等领域,支持有条件的城市建设基于人工智能和 5G 物联的城市大脑集群。

城市治理和管理不仅是国家治理体系的重要组成部分,同时也是全球互联网治理体系的重要载体和构建网络空间命运共同体的重要基础。上个月我们发布了一篇文章《基于 HTML5 WebGL 构建智能城市 3D 场景》,大体介绍了如何使用 ht.js 快速 3D  建模,展示了良好的可视化效果,今天继续探讨智慧城市的应用。

  demo: http://www.hightopo.com/demo/city/

功能点

  • 应急响应
  • 交通情况
  • 城市漫游
  • 工程情况

1.应急响应

随着城市化、工业化、信息化进程加快,各种风险隐患层出不穷,突发事件频繁发生,已经从“非常态化”的偶发事件演变成了“常态化”的频发事件,直接威胁着公众的生命财产安全。为了及时、有效、妥善地处置各种城市突发事件,必须建立统一领导的指挥系统、常备不懈的保障系统和防患未然的防范系统,。

上图主要以 2/3D  联动的方式,依次展示了在面对突发情况下,城市应急救援的响应过程。

步骤:事故定位->告警设施自启动->电力切断->油气截断阀启动->周边情况->确认告警范围->通知学校->医院准备->应急人员准备->交通规划->应急方案预备->应急方案启动->应急资源触发->现场方案预备->现场方案启动->人员进场->作业中)

实现思路:首先对模型进行分组,并在相应的图元上标记 tag ,使用 ht.Default.startAnim()  来完成每一步的动画效果,然后拼接动画即可实现上图中的 3D 动画效果。至于右边的 2D 步骤显示面板的联动,因为本 demo 采用的是 ht.js 来实现的, ht.DataModel 作为承载 Data  数据的模型,管理着 Data  数据的增删以及事件派发,右侧的 2D 面板里的步骤也是一个个 Data ,我们只要对其进行数据绑定,在动画执行到某一时刻,通过动态修数据来控制图元的透明度等样式就可以实现 2/3D 联动了。demo 中的事故地点,点击可跳转到另一个室内定位的 案例 。

// 事故定位动画主要代码
animStep_1() {
let process_01 = this.main.g2d.dm().getDataByTag("process_01");
process_01.s("opacity", 1);
let emergencyResponseParent_1 = this.main.g3d
.dm()
.getDataByTag("emergencyResponseParent_1");
this.setVisible(emergencyResponseParent_1, true, "children");
let children = this.getChildren(emergencyResponseParent_1);
children.forEach(i => {
i.s("shape3d.transparent", true);
i.s("shape3d.opacity", 0);
});
this.main.anim = ht.Default.startAnim({
duration: 2000,
easing: t => {
return t;
},
finishFunc: () => {
this.animStep_2();
}, // 动画结束后调用的函数。
action: (v, t) => {
this.setStepPanel(process_01, t, 4);
if (t <= 0.25) {
children[0].s("shape3d.opacity", 5 * Ease.easeOutSine(t));
} else if (t <= 0.375) {
children[1].s(
"shape3d.opacity",
8 * Ease.easeOutSine(t - 0.25)
);
} else if (t <= 0.5) {
children[2].s(
"shape3d.opacity",
8 * Ease.easeOutSine(t - 0.375)
);
}
}
});
}

2.交通情况

先上图:

从应用领域来看,目前我国智慧交通主要应用在公路交通信息化、城市道路交通管理服务信息化以及城市公交信息化领域。伴随着数字化转型,政府主动牵头智慧城市建设,未来市场潜力巨大。该功能点能更直观有效的反应当前的道路交通情况,使各地政府更加有效的、科学的管理交通,发挥出大城市的交通效能。常规的 2D 效果图已经不满足于当下的需求了,伴随着大数据、云计算、5G、AI、边缘计算等技术的发展成熟,3D  可视化更能直观的、有效的反馈信息。当然,3D  可视化离不开一款强大的图形引擎。本模块只是简单地模拟了交通状况,并未继续拓展。

3.城市漫游

由于计算机图形学和软硬件技术的快速发展,虚拟现实技术越来越为人们所重视。虚拟现实技术的应用一直是计算机应用领域的热点,虚拟现实技术的应用价值已经得到了广泛的认可。3D  漫游可以提供很好的用户交互体验,所以本 demo  也展示了这一功能。

借助于 HT,漫游功能的实现只要几行代码就可以实现了。ht.Shape  是极其强大的图元类型,这里绘制漫游路线就是使用其扩展子类 ht.Polyline ,绘制一条三维空间管道,然后通过获取该路径上的点来不断设置 eye 就行了。代码如下:

// 漫游动画
roamingAnim() {
// polyline
let polyline = this.main.g3d.dm().getDataByTag("polyline");
this.main.anim = ht.Default.startAnim({
duration: 15000,
easing: t => {
return t;
},
finishFunc: () => {
}, // 动画结束后调用的函数。
action: (v, t) => {
let length = this.main.g3d.getLineLength(polyline),
offset = this.main.g3d.getLineOffset(polyline, length * v),
point = offset.point,
px = point.x,
py = point.y,
pz = point.z;
this.main.g3d.setEye(
px ,
py ,
pz
);
this.main.g3d.setCenter(0, 0, 0);
}
});
}

4.工程情况

该页面主要展示了工程情况:大桥()、盾构作业()、海底隧道()。

至此,该 demo 的功能点就介绍完了。

图一,12月12日晚,厦门地铁2号线吕厝路口配套的物业开发地块施工现场发生塌陷,所幸没有造成人员伤亡,事故原因疑似管道破裂导致,水流将路基中的稳定土层掏空,加上路面上的汽车压力,导致路面坍塌。

图二,3月21日下午14:48左右,位于响水县生态化工园区的化工厂发生爆炸。近年来,多加化工厂爆炸,所造成的生命、财产损失不可估量。

一场场事故触目惊心,时刻提醒着我们要防患于未然。水是人类生活的源泉而随着城市的发展水污染问题也越来越严重,水资源监管和治理成为城市发展的一大困扰,水质监控不及时、水灾预警不及时更是直接关系到民生问题。而智慧水务的发展则能非常及时、准确的解决问题。假如有比较好的监控预警系统,这些事故发生的可能性将大大降低。后续会再写些关于智慧水务的文章,也会再拓展应急预案的场景案例。

基于 HTML5 WebGL 的智慧城市(一)的更多相关文章

  1. 基于 HTML5 WebGL 的智慧楼宇可视化系统

    前言 可视化的智慧楼宇在 21 世纪是有急迫需求的,中国被世界称为"基建狂魔",全球高层建筑数量位居首位,所以对于楼宇的监控是必不可少.智慧楼宇可视化系统更多突出的是管理方面的功能 ...

  2. 基于 HTML5 WebGL 的智慧楼宇三维可视化监控

    前言 可视化的智慧楼宇在 21 世纪是有急迫需求的,中国被世界称为"基建狂魔",全球高层建筑数量位居首位,所以对于楼宇的监控是必不可少.智慧楼宇可视化系统更多突出的是管理方面的功能 ...

  3. 基于 HTML5 WebGL 构建智能城市 3D 场景

    前言 随着城市规模的扩大,传统的方式很难彻底地展示城市的全貌,但随着 3D 技术的应用,出现了 3D 城市群的方式以动态,交互式地把城市全貌呈现出来.配合智能城市系统,通过 Web 可视化的方式,使得 ...

  4. 基于 HTML5 WebGL 的 智慧楼宇能源监控系统

    前言 21世纪,在能源危机和全球气候变暖的压力下,太阳能等可再生能源越来越受到关注,其中光伏建筑一体化逐渐成为绿色发展方式和生活方式,加强节能降耗,支持低碳产业和新能源.可再生能源发展,也已经成为国家 ...

  5. 基于 HTML5 WebGL 的加油站 3D 可视化监控

    前言 随着数字化,工业互联网,物联网的发展,我国加油站正向有人值守,无人操作,远程控制的方向发展,传统的人工巡查方式逐渐转变为以自动化控制为主的在线监控方式,即采用数据采集与监控系统 SCADA.SC ...

  6. 基于 HTML5 WebGL 的地铁站 3D 可视化系统

    前言 工业互联网,物联网,可视化等名词在我们现在信息化的大背景下已经是耳熟能详,日常生活的交通,出行,吃穿等可能都可以用信息化的方式来为我们表达,在传统的可视化监控领域,一般都是基于 Web SCAD ...

  7. 基于 HTML5 WebGL 的计量站三维可视化监控系统 Web 组态工控应用

    得益于 HTML5 WebGL 技术的成熟,从技术上对工控管理的可视化,数据可视化变得简单易行!完成对工控设备的管理效率,资源管理,风险管理等的大幅度提高,同时也对国家工业4.0计划作出有力响应! 如 ...

  8. 基于 HTML5 WebGL 的 3D 风机 Web 组态工业互联网应用

    基于 HTML5 WebGL 的 3D 风机 Web 组态工业互联网应用 前言 在目前大数据时代背景之下,数据可视化的需求也变得越来越庞大,在数据可视化的背景之下,通过智能机器间的链接并最终将人机链接 ...

  9. 基于 HTML5 WebGL 的挖掘机 3D 可视化应用

    前言 在工业互联网以及物联网的影响下,人们对于机械的管理,机械的可视化,机械的操作可视化提出了更高的要求.如何在一个系统中完整的显示机械的运行情况,机械的运行轨迹,或者机械的机械动作显得尤为的重要,因 ...

随机推荐

  1. 003eop常见问题设置

  2. 洛谷P1147 连续自然数和 题解 枚举

    题目链接:https://www.luogu.com.cn/problem/P1147 题目大意: 给你一个数 \(M\) ,求有多少对连续自然数对之和为 \(M\),输出这列连续自然数对的首项和末项 ...

  3. 洛谷P1638 逛画展 题解 尺取法/双指针/队列

    题目链接:https://www.luogu.com.cn/problem/P1638 题目大意: 给你一个长度为 \(n (\le 10^6)\) 的数组,数组中每个元素的范围在 \(1\) 至 \ ...

  4. 小小知识点(五十一)——6G扬帆起航:拍赫兹通信与健康泛在网络助推6G新应用

    转自IEEE科技纵览  https://weibo.com/ttarticle/p/show?id=2309404454066502631625 6G扬帆起航:拍赫兹通信与健康泛在网络助推6G新应用 ...

  5. jenkins介绍和安装

    1.jenkins介绍 1.1 Jenkins概念: • Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,无论用的是什么平台. • 这是一个免费的源代码,可以处理任何类型的构建或持 ...

  6. Date、Time类型拼接成字符串

    Date.Time类型拼接成字符串 语言用的是kotlin,和Java类似 var time = "" val sdf1 = SimpleDateFormat("yyyy ...

  7. 详解Spring IoC容器

    一.Spring IoC容器概述 1.依赖反转(依赖注入):依赖对象的获得被反转了. 如果合作对象的引用或依赖关系的管理由具体对象来完成,会导致代码的高度耦合和可测试性的降低,这对复杂的面向对象系统的 ...

  8. 【转】Vim显示中文乱码

    Windows下,在Vim中如果想让中文正常显示,可以在 Vim安装目录下找到_vimrc 文件,用记事本打开就行,然后在其中加入如下语句:   set fileencodings=gb2312,gb ...

  9. 图解kubernetes服务打散算法的实现源码

    在分布式调度中为了保证服务的高可用和容灾需求,通常都会讲服务在多个区域.机架.节点上平均分布,从而避免单点故障引起的服务不可用,在k8s中自然也实现了该算法即SelectorSpread, 本文就来学 ...

  10. Nginx作为web静态资源服务器——跨域访问

    跨站访问 ​ 为什么浏览器禁止跨域访问 ​ Nginx跨站访问 Syntax:add_header name value [always]; Default:—— Context:http,serve ...