基于Krpano的全景导游系统设计与实现(含word文档)

基于krpano的全景导游系统设计与实现

【摘 要】本项目是基于krpano内核设计的一款全景漫游APP,主要内容为旅游景点、房地产的介绍。项目由Android客户端、服务器、数据库三大部分组成,移动客户端采用混合式开发模式来展现全景图片或全景视频,从而使用户身临其境地感受旅游景点的历史文化和美景,也可以帮助人们在最短的时间内看房买房,并且能通过微信分享给其他人。应用服务器基于SSH三大框架,建立了客户端和MySQL数据库的连接。本项目为用户旅游、看房提供了一种新的形式,对于提高用户对未知的事物的认识有很大意义。
【关键词】全景漫游;krpano;VR;混合式开发;微信分享

1.绪论 1
1.1研究的背景及意义 1
1.2国内外研究概况 1
1.3论文的主要研究工作 1
2.关键技术 1
2.1 SSH框架技术 1
2.1.1 Spring技术 1
2.1.2 Spring MVC简介 1
2.1.3 Hibernate简介 2
2.1.4 SSH框架整合 2
2.2 Ajax技术 3
2.3 WebGL和krpano技术 3
2.4 Android混合开发技术 4
3.系统需求分析 4
3.1需求概述 4
3.2用户及用例 5
3.3功能性需求分析 5
3.4系统运行环境需求 6
4.系统设计 6
4.1系统总体设计 6
4.2功能模块设计与实现 9
4.2.1 服务器功能模块设计与实现 9
4.2.2 移动客户端功能模块设计与实现 12
4.2.3 PC客户端功能模块设计与实现 14
4.3 Krpano全景软件设计 15
4.3.1 Krpano软件框架设计 15
4.3.2 Krpano工具使用流程 17
4.3.3 Krpano运作机制 18
4.3.4 Krpano插件使用与制作 20
4.4 Android界面设计 26
4.4.1 ViewPager+Fragment实现可滑动和切换的标签页 26
4.4.2 重新LinearLayout实现下拉刷新与加载更多 26
4.4.3 webview加载Krpano内核以及调用百度地图和高德地图导航 27
4.4.4 微信分享 28
5. 系统测试 29
5.1 PC的文案内容管理功能测试 29
6.总结与展望 32
参考文献 33

1.绪论
1.1研究的背景及意义
虚拟全景又称三维全景虚拟现实(也称实景虚拟)是基于全景图像的真实场景虚拟现实技术,是虚拟现实技术中非常核心的部分。全景(英文名称是 Panorama)是把相机环360 度拍摄的一组或多组照片拼接成一个全景图像,通过计算机技术实现全方位互动式观看的真实场景还原展示方式。虚拟漫游系统,是利用普通的数码摄像机,环360度拍摄的一组照片通过无缝处理,所拼接成的一张全景图像。然后运用一定的网络技术将全景图像在互联网上显示,并具有较强的互动性,使您能用鼠标控制环视的方向,可左可右,可上可下,可近可远,可大可小,使您有身临其境的感觉,形成一套网络化的虚拟漫游系统产品。
应用领域方面可广泛应用于房地产三维电子楼书设计、宾馆酒店展示、旅游景点展示、城市景观展现,也可以应用于电子商务网上的虚拟展厅制作、网上虚拟博物馆的展示、政府虚拟城市项目建设以及包括建筑设计和施工单位在内的各大中型企业的企业形象宣传和项目记录与汇报等方面。
1.2国内外研究概况
当前,拥有核心知识产权,技术过硬的企业并不多,行业内优秀品牌企业稀少。傲唯刃道呼吁业内企业共同努力,尤其发挥吹毛求疵的研发精神,进一步提高研发能力,降低成本,真正解决客户的实际困难,严把质量关,提供最可靠的产品和技术。
平面的房产展示已经难以满足客户需要了解更多房产信息的需求,而用3Dmax或其它三维虚拟现实制作软件生成的房产展示又由于建模图像尽管唯美,但缺乏真实感,360全景无疑成为一种新的、行之有效的虚拟现实展示形式。
目前目前支持VR视频与360度全景视频的软件有:国内的如UtoVR、 橙子VR、 暴风魔镜、极乐王国、VR热播、3D播播、他视、奇境VR播放器等,国外的如卡尔蔡司的VR One Cinema、三星Gear VR、Google、HTC、Ocular等
1.3论文的主要研究工作
本论文主要的研究工作是提出以“新媒体+VR全景”的模式进行针对旅游、房地产等进行推广、介绍,并以新媒体的形式,通过微信分享的形式进行大面积的传播,从而吸引用户到该旅游景点旅游或提高对该房地产的购买欲望。本项目采用“手机移动端+后台”的形式,通过在后台上传相应的数据,然后在移动端进行展示。目的就是为了拉近用户和目标源的距离,从而更好的服务用户,实现让用户不出门就能知天下事,并身临其中。
2.关键技术
2.1 SSH框架技术
2.1.1 Spring技术
Spring是一种开发框架。许多应用开发是十分复杂的,而Spring的产生正是为了解决这个问题。分层架构是它最突出的优势,使用者可以十分自由地选择要使用哪一个组件。不仅如此,对于J2EE应用程序开发,可以使用其集成好的框架,有效地将许多技术整合成一个整体,达到更好解决问题的目的。它的存在使系统结构更加良好,它有许多优良特点:可测试性、简单、松耦合等。
2.1.2 Spring MVC简介
Spring MVC为了使模型对象、分派器以及处理程序对象的角色、控制器更容易进行定制,将它们三者分离。在开发效率上,通过引入Annotation,得到极大的提高,同时开发周期也大为缩短。Spring MVC的拦截并不针对类,而是针对方法,因为它是基于方法的,方法拥有各自的request 和response数据,而非共同使用,保持着基本独立的关系。请求的数据是通过参数去获取的,处理结果产生之后,交回到框架相当简洁,直接通过ModelMap交回。
2.1.3 Hibernate简介
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的ORM框架,Hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
2.1.4 SSH框架整合
采用前面介绍的三种框架技术SpringMVC、Spring和Hibernate可以分别实现一个Web应用的表现层、业务逻辑层、数据持久层。其中SpringMVC控制表现层的页面跳转,调用业务逻辑Service层,实现了对M、V、C的分离;Spring对业务逻辑进行处理,管理容器;Hibernate处理数据库相关事务。以下介绍对这三种框架技术的整合,形成轻量级的SSH架构。

①下载所需的所有jar包,并导入到服务器工程的lib目录底下其中包括:
在这里插入图片描述
2.2 Ajax技术
Ajax是一种动态网页开发技术,是web前端开发技术范畴,使用这个技术的Web应用程序具有更好、更快、交互性更强的特点。
当网页需要更新部分内容,而在这个技术还没有出现之前,实现方式是对整个页面都进行加载,如此一来,因为前端传给服务器的页面代码和服务器返回的页面代码,许多是相同的,这显然十分浪费带宽。而使用这个技术后,无需重载整个页面,在不阻塞用户的情况下就能进行少量数据交换,从而实现异步更新页面。对用户界面的响应,因为这种技术,变得速度更快,时间更短,同时,服务器处理的时间也大为缩短。
优势总结:
通过异步模式减少了对用户界面的响应时间
(2)避免了多余的数据,从而降低了对带宽的占用
(3)Ajax不在服务器运行,而在客户端,降低了其负载
2.3 WebGL和krpano技术
WebGL(全写Web Graphics Library)是一种3D绘图标准,这种绘图技术标准允许把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的一个JavaScript绑定,WebGL可以为HTML5 Canvas提供硬件3D加速渲染,这样Web开发人员就可以借助系统显卡来在浏览器里更流畅地展示3D场景和模型了,还能创建复杂的导航和数据视觉化。显然,WebGL技术标准免去了开发网页专用渲染插件的麻烦,可被用于创建具有复杂3D结构的网站页面,甚至可以用来设计3D网页游戏等等。
Krpano内核的底层架构师基于WebGL设计开发了,krpano内核将WebGL进行了封装,使得开发者只要利用Krpano内核的规则,就能设计一款基于web的VR全景,Krpano主要利用Xml语言进行编写,最后再编译过程奖Xml语言利用Krpano内核进行解析成普通的html语法结构,最终才呈现到网页上。
2.4 Android混合开发技术
混合开发的App(Hybrid App)就是在一个App中内嵌一个轻量级的浏览器,一部分原生的功能改为Html5来开发,这部分功能不仅能够在不升级App的情况下动态更新,而且可以在Android或iOS的App上同时运行,让用户的体验更好又可以节省开发的资源。
本系统Android客户端主要利用原生Android的ViewPager+Fragment的形式搭建外部框架,然后通过重写GridView来搭建内部的网格框架,最后再其内部采用腾讯X5浏览器内核的sdk进行重写WebView,从而使整个客户端稳定。
3.系统需求分析
3.1需求概述
本系统是一个面向用户的系统,是为了提高用户在面对陌生的旅游景点或购买房子的效率和质量,帮助商家更好地推广和销售商品或推广旅游景点而开发的,因此本系统的用户分为两大类:平台方和用户。通过Internet将两类用户联系起来。

在这里插入图片描述
为了提高用户体验,客户端APP支持访客模式,用户在没有登录的情况下可以浏览生活文案和相关商品详情,但是无法进行相关的收藏、分享、评论等操作,以及其他需要与个人账号相关联的操作。
3.2用户及用例
(1)平台方
平台方主要利用系统进行文案和展示内容的管理,包括添加和删除操作,也可以利用系统查看文案和展示内容的相关信息,包括分享数、评论数等。
在这里插入图片描述
。。。。。。。。。。。。。。。
。。。。。。。。。。。。。
。。。。。。。。。。
在这里插入图片描述
全部内容:点击下载

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员小蛋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值