一种Android应用的cesium离线可视化方法与流程

未命名 10-19 阅读:96 评论:0

一种android应用的cesium离线可视化方法
技术领域
1.本发明涉及互联网领域,尤其涉及一种android应用的cesium离线可视化方法。


背景技术:

2.想要在android应用中实现离线三维模型地球可视化,以现有技术路线实现的主要方式为:
3.对接指定的服务器通过androidwebview加载服务端提供的基于cesium开发的html页面,来实现在android应用中预览定位在地球上的三维模型,通过webview缓存实现离线。
4.现有技术路线主要存在的问题:无法完全实现离线,只能离线预览在线预览过的三维视角及地球视角,其他视角无法预览。


技术实现要素:

5.鉴于上述问题,提出了本发明以便提供克服上述问题或者至少部分地解决上述问题的一种android应用的cesium离线可视化方法。
6.根据本发明的一个方面,提供了一种android应用的cesium离线可视化方法,所述离线可视化方法包括:
7.搭建android端本地服务;
8.实现地球影像、地形数据接口服务;
9.发布三维模型静态文件服务;
10.开发cesium的前端网页;
11.cesium离线可视化。
12.可选的,所述搭建android端本地服务具体包括:
13.在工程中依赖andserver插件,并在代码中定义
14.andserver.webserver对象来实现本地服务;
15.通过注册server.serverlistener对象实现服务开启及暂定的信号,并在服务开发后通过系统方法获取本地服务ip。
16.可选的,所述实现地球影像、地形数据接口服务具体包括:
17.将地球影像数据存储到数据库中,表字段定义如下:
18.a、字段x,类型为int,存储东西方向的影像位置,
19.b、字段y,类型为int,存储南北方向的影像位置,
20.c、字段z,类型为int,存储影像层级,
21.d、字段tile,类型为blob,存储的是想x、y、z对应的影像图片;
22.地形数据表的存储结构与影像数据的一样,并存储在同一个数据库中。
23.可选的,所述发布三维模型静态文件服务具体包括:
24.andserver提供静态文件服务,在代码中使用注解“@config”实现静态服务类,自
动注册到第1步定义的本地服务上,将服务类继承webconfig类,并实现onconfig函数,在函数中调用addwebsite方法注册静态文件服务,文件的根目录提前写死,三维模型的静态文件服务已经实现完毕。
25.可选的,所述开发cesium的前端网页具体包括:
26.集成cesium开发html页面,通过
27.newcesium.urltemplateimageryprovider()配置第2步中开发的地球影像数据的本地服务接口;
28.调用newcesium.cesiumterrainprovider()配置第2步中开发的地球地形数据的本地服务接口;
29.再根据应用的具体业务实现三维模型加载,三维模型访问地址为第3步中开发的本地静态文件服务的路径;
30.再将开发的html文件及关联的js等文件放置在assets目录下,在静态服务类中注册对应的根目录,实现静态服务。
31.可选的,所述cesium离线可视化具体包括:
32.在应用中使用android-webview加载第4步注册的静态服务地址。
33.本发明提供的一种android应用的cesium离线可视化方法,所述离线可视化方法包括:搭建android端本地服务;实现地球影像、地形数据接口服务;发布三维模型静态文件服务;开发cesium的前端网页;cesium离线可视化。通过静态文件服务提供三维模型文件服务,这样能动态加载三维模型;使用数据库存储地球影像及地形数据,使离线地球数据加载更简单,更灵活。
34.上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
35.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
36.图1为本发明实施例提供的一种android应用的cesium离线可视化方法的流程图。
具体实施方式
37.下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
38.本发明的说明书实施例和权利要求书及附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元。
39.下面结合附图和实施例,对本发明的技术方案做进一步的详细描述。
40.如图1所示,搭建android端本地服务
41.在工程中依赖andserver插件,并在代码中定义andserver.webserver对象来实现本地服务,通过注册server.serverlistener对象实现服务开启及暂定的信号,并在服务开发后通过系统方法获取本地服务ip。
42.实现地球影像、地形数据接口服务;
43.将地球影像数据存储到数据库中,表字段定义如下:
44.a、字段x,类型为int,存储东西方向的影像位置,
45.b、字段y,类型为int,存储南北方向的影像位置,
46.c、字段z,类型为int,存储影像层级(一般层级为1到21级),
47.d、字段tile,类型为blob,存储的是想x、y、z对应的影像图片。
48.地形数据表的存储结构与影像数据的一样,并存储在同一个数据库中。
49.使用注解“@restcontroller”定义rest接口类,此类会自动注册到第1步定义的本地服务上,在此类中实现地球影像数据及地形数据读取的两个接口,接口参数均为x、y、z,并且都是从数据库的对应表中读取tile字段,并将tile字段对应的值转成文件返回。
50.发布三维模型静态文件服务;
51.andserver提供静态文件服务,在代码中使用注解“@config”实现静态服务类,此类会自动注册到第1步定义的本地服务上,将服务类继承webconfig类,并实现onconfig函数,在函数中调用addwebsite方法注册静态文件服务,文件的根目录提前写死即可,至此三维模型的静态文件服务已经实现完毕。
52.开发cesium的前端网页
53.集成cesium开发html页面,通过
54.newcesium.urltemplateimageryprovider()配置第2步中开发的地球影像数据的本地服务接口,例如
55.(http://127.0.0.1:8080/tile?x={x}&y={y}&z={z});
56.调用newcesium.cesiumterrainprovider()配置第2步中开发的地球地形数据的本地服务接口,例如
57.(http://127.0.0.1:8080/dem?x={x}&y={y}&z={z});
58.再根据应用的具体业务实现三维模型加载,三维模型访问地址为第3步中开发的本地静态文件服务的路径,例如
59.(http://127.0.0.1:8080/file/root/***.json),“***”具体以本地文件位置路径替换,
60.再将开发的html文件及关联的js等文件放置在assets目录下,然后在静态服务类中注册对应的根目录,以实现静态服务。
61.cesium离线可视化
62.在应用中使用android-webview加载第4步注册的静态服务地址,例如(http://127.0.0.1:8080/cesium/index.html),至此已实现cesium离线本地可视化。
63.有益效果:通过静态文件服务提供三维模型文件服务,这样能动态加载三维模型;使用数据库存储地球影像及地形数据,使离线地球数据加载更简单,更灵活。
64.以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细
说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:
1.一种android应用的cesium离线可视化方法,其特征在于,所述离线可视化方法包括:搭建android端本地服务;实现地球影像、地形数据接口服务;发布三维模型静态文件服务;开发cesium的前端网页;cesium离线可视化。2.根据权利要求1所述的一种android应用的cesium离线可视化方法,其特征在于,所述搭建android端本地服务具体包括:在工程中依赖andserver插件,并在代码中定义andserver.webserver对象来实现本地服务;通过注册server.serverlistener对象实现服务开启及暂定的信号,并在服务开发后通过系统方法获取本地服务ip。3.根据权利要求1所述的一种android应用的cesium离线可视化方法,其特征在于,所述实现地球影像、地形数据接口服务具体包括:将地球影像数据存储到数据库中,表字段定义如下:a、字段x,类型为int,存储东西方向的影像位置,b、字段y,类型为int,存储南北方向的影像位置,c、字段z,类型为int,存储影像层级,d、字段tile,类型为blob,存储的是想x、y、z对应的影像图片;地形数据表的存储结构与影像数据的一样,并存储在同一个数据库中。4.根据权利要求1所述的一种android应用的cesium离线可视化方法,其特征在于,所述发布三维模型静态文件服务具体包括:andserver提供静态文件服务,在代码中使用注解“@config”实现静态服务类,自动注册到第1步定义的本地服务上,将服务类继承webconfig类,并实现onconfig函数,在函数中调用addwebsite方法注册静态文件服务,文件的根目录提前写死,三维模型的静态文件服务已经实现完毕。5.根据权利要求1所述的一种android应用的cesium离线可视化方法,其特征在于,所述开发cesium的前端网页具体包括:集成cesium开发html页面,通过newcesium.urltemplateimageryprovider()配置第2步中开发的地球影像数据的本地服务接口;调用newcesium.cesiumterrainprovider()配置第2步中开发的地球地形数据的本地服务接口;再根据应用的具体业务实现三维模型加载,三维模型访问地址为第3步中开发的本地静态文件服务的路径;再将开发的html文件及关联的js等文件放置在assets目录下,在静态服务类中注册对应的根目录,实现静态服务。6.根据权利要求1所述的一种android应用的cesium离线可视化方法,其特征在于,所
述cesium离线可视化具体包括:在应用中使用android-webview加载第4步注册的静态服务地址。

技术总结
本发明提供的一种Android应用的cesium离线可视化方法,所述离线可视化方法包括:搭建Android端本地服务;实现地球影像、地形数据接口服务;发布三维模型静态文件服务;开发Cesium的前端网页;Cesium离线可视化。通过静态文件服务提供三维模型文件服务,这样能动态加载三维模型;使用数据库存储地球影像及地形数据,使离线地球数据加载更简单,更灵活。更灵活。更灵活。


技术研发人员:隗刚 孙士欣 张泽众 孙敏杰
受保护的技术使用者:北京道亨软件股份有限公司
技术研发日:2023.07.11
技术公布日:2023/10/15
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐