翻开博客,已经有1年没有更新了。今天我还想写点实时航班接入的那些事儿。

先剧透一张图,我的航班即将起飞啦:)

ESRI在2015年推出了ArcGIS Runtime Quartz系列SDK,全新的架构以及多平台的API的一致性,让人眼前一亮。2017年ESRI为ArcGIS Runtime SDK提供了高效、强劲的三维功能。三维功能发布之初,只有ArcGIS Runtime SDK for .NET支持三维功能,而ArcGIS Runtime SDK for iOS、for Java、for Android、for Qt等还不支持三维。

凭借自己之前研究过一点三维、OGRE的底子,还有对ESRI新产品的好奇。2017年年底,我将注意力放在ArcGIS Runtime SDK for .NET对接实时数据、模拟飞机船舶动态这类即时三维场景上。而当时技术总监彭总听了我的想法后给了一个相当有建设性的意见——尝试对接民航航班数据。于是乎,有了《基于ArcGIS Runtime for .NET(WPF)的实时航班展示解决方案》。

当时的航班解决方案基于ArcGIS Runtime for .NET构建,虽然只能运行在Windows上,但是已经初步解决了航班数据接入,航班姿态控制、航班数据驱动以及效果和性能大量核心问题。方案的效果参见另一篇博客:

ArcGIS Runtime for .Net Quartz开发探秘(九):实时数据接入展示       https://mp.csdn.net/postedit/79157644

2018年年底,为了完成领导“提交技术创新”的任务,本着吃老底的心态,又将注意力放在了实时航班接入这里。

当时仔细阅读了ArcGIS Runtime SDK for .NET的三维API,发现已经无法再榨出什么有用的东西,而ArcGIS Runtime SDK for iOS和ArcGIS Runtime SDK for Android相继推出了三维功能,于是乎,我打起了ArcGIS Runtime SDK for Android以及ArcGIS Runtime for iOS的主意。花了一个月左右的时间,学习Android开发、学习iOS开发,照猫画虎,分别在Android和iOS上部署了实时航班解决方案(思路一致,代码完全重写)。当时开发的Android程序跑在一个13年公司买的谷歌小平板上,开发的iOS程序跑在iphone 8 plus上。对比效果,iOS要比Android流畅。所以当下选定在ArcGIS Runtime SDK for iOS上继续发力。

我的想法是:与之前《基于ArcGIS Runtime for .NET(WPF)的实时航班展示解决方案》的面向群体不同,这次基于ArcGIS Runtime SDK for iOS开发的实时航班程序将不在关注大片区域的航班状况,也不再是大屏展示系统,而是要做一个针对个人用户,提供一个旅客个人使用的,能够关注航班动态的手机端App。

其实应用市场中类似的App也有,如《航旅纵横》、《非常准》等。但是这些App都不提供航班姿态的实时三维展示。而我的App——《我的航班呢?》可以补充他们的这些不足。说了这么多,赶紧给大家看下效果,请忽略巨丑的UI。

以三维场景为主,用户可以模糊搜索自己的航班,搜索后自动定位到航班这里。能够显示的内容很多。

1、固定(低频更新)的信息有:

机型、机龄、呼号、批号、计划出发时间、计划到达时间、预计出发时间、预计到达时间、实际出发时间、实际到达时间。

2、实时(高频更新,200ms为间隔)的信息有:

经度、纬度、海拔、航速、航向、数据类型、剩余时间、剩余里程、过境区域。

需要说明的是:数据类型要么是“实时数据”,要么是“模拟数据”。由于实时数据源的问题,在部分情况下,航班存在没有数据传输过来的情况,而我需要航班在这种情况下不断沿原路线继续前进。在没有数据传输过来时,我自己模拟数据,此时面板中将显示“模拟数据”。过境区域我调用的是iOS本身提供的地理编码服务。

《我的航班呢》提供观察模式选择,有跟踪模式、沉浸模式、航拍模式和VR模式。

接下来就是炫酷的沉浸模式啦,开飞机的赶脚。

驾驶舱模式提供罗盘、雷达以及高度计。并且这些仪表的显示都是与当前航班姿态一致。点击雷达可以放大。

雷达中心为旅客所在航班,雷达能监听显示附近航班。

右侧滑动条能模拟驾驶员头部转动,调节转头后看到的效果。

更炫酷视频我上传到优酷了,强烈建议在高清分辨率下观看。^_^

https://v.youku.com/v_show/id_XMzk4OTEzNjAzNg==.html

航班、实时、三维、虚拟现实——《我的航班呢?》相关推荐

  1. vr实时三维计算机图形技术的原理,vr虚拟现实技术原理有什么

    vr虚拟现实技术原理有什么 vr眼镜是怎么来实现虚拟现实的是很多人觉得不可思议的事情,这个技术原理其实跟vr的核心技术是有关系的,只有了解了核心技术才能了解vr技术原理是什么,下面就是jy135网为大 ...

  2. 航班实时起降查询调用代码实现

    航班实时起降查询代码实现功能: 当日航班,含国际 orgCity dstCity 通过始发城市查询航班 | flightNo 通过航班号查询航班. 接口名称:航班实时起降查询 接口平台:聚合数据 接口 ...

  3. c#获取航班实时信息(飞常准网站)

    本文实现一个功能,winform查询出航班实时信息,数据来源于http://www.veryzhun.com/ 功能模块有:输入汉字获取其ulencode编码(gb2312格式).查询出结果分析并提取 ...

  4. 机场航班起降与协调管理系统飞机航班(含源码+论文+答辩PPT等)

    该项目采用技术JSP.Servlet.jdbc.Tomcat服务器.MySQL数据库 ,项目含有源码.论文.配套开发软件.软件安装教程.项目发布教程 项目介绍: 此次项目是一个Java机场航班起降与协 ...

  5. 项目需求 | PC VR头戴显示器实时三维坐标(项目经费20万)

    项目需求:PC VR头戴显示器实时三维坐标 需求内容:Windows环境下,通过双目摄像头+IMU+orb-slam获取实时三维坐标. 1.头部跟踪支持双目(四目)鱼眼摄像头的SLAM定位的算法,输出 ...

  6. Complexer-YOLO:基于语义点云的实时三维目标检测与跟踪

    泡泡点云时空,带你精读点云领域顶级会议文章 标题:Complexer-YOLO: Real-Time 3D Object Detection and Tracking on Semantic Poin ...

  7. 航班动态查询接口 支持最新航班查询

    在即将到来的双十二,在聚合数据平台上的航班动态查询接口将参与"暖冬不如低价活动",航班动态查询接口支持最新航班查询,包括始发.重点.航班号.航空公司.日期.准确率.始发天气.终点天 ...

  8. c语言课设航班信息管理软件管理系统,c语言航班信息查询系统实验报告.doc

    c语言航班信息查询系统实验报告.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3 ...

  9. 基于正交投影的实时三维人体姿态估计

    王亦洲课题组 ECCV 2022 入选论文解读:基于正交投影的实时三维人体姿态估计 本文是对发表于计算机视觉领域顶级会议 ECCV 2022的论文 Faster VoxelPose: Real-tim ...

  10. 机器人3D模型可视化建模线上三维虚拟现实展示

    提到3D建模,人们往往都会想到三维虚拟现实,3D虚拟现实其实是3D建模的另一个表现方式,而商迪3D的虚拟现实系统在应用上相当广泛,它不仅能用在工业上,而且他还能用在机器人上.它的数据和模型的建模的程度 ...

最新文章

  1. [JAVA EE]session 和 token 机制
  2. Linux drm显示系统的两种方案
  3. Centos7-Mysql 5.6 多主一从 解决方案详细配置
  4. [转]HOWTO do Linux kernel development - take 3 (中文版)
  5. FPGA 和ASIC开发的区别
  6. mysql的query cache_MySQL 缓存 Query Cache
  7. 上传文件和提交textfield_0基础掌握Django框架(37)文件上传
  8. java 二分搜索获得大于目标数的第一位_程序员数据结构算法编程,二分查找搜索算法的原理与应用介绍!...
  9. fanuc roboguide_ROBOGUIDE软件:机器人产线输送带输送物料虚拟仿真操作
  10. 性能测试--11Beanshell的脚本开发技术
  11. 解决APKIDE(APK改之理)运行出现ApkIDE Exception:…报错的问题
  12. 如何跳过浏览器的PDF预览 直接打印
  13. 接收前端传回的JSON字符串,并存入数据库
  14. oracle视图在查询里,oracle视图
  15. 你可知道利用独立博客进行淘宝客推广方法
  16. 混合柯西变异和均匀分布的蝗虫优化算法-附代码
  17. 杨幂生日祝福贺卡!!~
  18. java显示数据库_java查询数据库中的数据并显示
  19. 官方指标监控神器SpringBootAdmin保姆级教程
  20. adb发送什么命令能在手机屏幕弹窗显示_Android 手机投屏在 Ubuntu 上的方法

热门文章

  1. 微信小程序长按图片保存至相册
  2. 华为鸿蒙手表mate watch,华为MateWatch曝光,搭载鸿蒙系统,对标苹果高端手表!...
  3. EDM备忘录:触发式邮件订阅和退订功能介绍
  4. Allegro软件中沉板的器件封装应该怎么处理呢?
  5. Charles(茶壶)的使用
  6. 怎么调整证件照的像素大小?这两种调整方法非常简单
  7. 使用Photoshop实现雪花飘落的效果
  8. tomcat 400错误
  9. python接收微信消息_【Python写微信防撤回脚本】02 接收记录聊天信息
  10. 是技不如人而不是金融危机!