web实现全景图的交互展示

Web实现全景图的交互展示

  • 不需要学习其他知识,小白也能实现全景图AR展示
    • 一、webVR全景图多种方案实现(aframe,Krpano,three,jquery-vrview等等)
    • 二、用krpano之前的一些知识准备
    • 三、krpano的购买、下载、注册
    • 四、做一个简单的漫游全景图
    • 五、总结

不需要学习其他知识,小白也能实现全景图AR展示

自己对于we前端开发来说也属于新手,这也是本人接到的第一个项目技术要求,尝试了许多次也算有个折磨的过程,我的失败经验应该能解决大部分人对于全景图的展示:

一、webVR全景图多种方案实现(aframe,Krpano,three,jquery-vrview等等)

  1. 第一种方案:three.js 作为作为前端界全景、3D大哥,无论是哪里搜索,只要搜索全景的插件,都会搜到这位大哥。
    官方地址:three.js官网
    官方学习地址:https://threejs.org/examples/#css3d_panorama
    源码:简单,引入three,引入3d
    实现:2:1的全景在PC端,可以预览,左右上下 鼠标移动
    优点:可调节细节比较多,对于技术大佬这才是展示拳脚的地方。
    缺点:PC端不能放大缩小,图片需要裁剪六张,移动端,不能放大缩小,更加糟糕的是渲染滴很差,手机也是如此(也有可能是我技术不到位)
    (因为尝试了几个效果都不好,而且代码也比较长,有需要的可以去官网看看,讲的也很详细)
  2. 第二种方案:A-frame
    官方地址:A-frame官方地址
    官方案例:案例展示
    源码:真是太简单了,引入aframe 框架<a-sky></a-sky>
    实现:2:1的全景在PC端,可以预览,左右上下 鼠标移动,还支持VR模式。
    优点:简单方便,就真的操作无脑
    缺点:PC端不能放大缩小,移动端只能左右移动,不能放大缩小,不能上下滑动
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><script src="https://aframe.io/releases/0.8.0/aframe.min.js"></script><title>Document</title>
</head>
<body><a-scene><a-sky src="./img/2.jpg"></a-sky></a-scene>
</body>
</html>

个人觉得aframe是一个非常好用得插件,提供了新的标签以后,就可以更通过CSS即可修饰,对于一些像我这样的JS基础不强的人来说还是非常友好,但是确定pc端和移动端不能放大缩小的缺点不能达到项目要求。
3. 第三种方案:krpano 是看了很多大佬的意见,一开始也觉得很难,因为听说还需要使用xml来使用,但是实际操作起来并不难甚至对于简单的漫游来说,简直是傻瓜式操作,并且这个比起之前的终于能实现要求了!!!(下面我也会详细讲讲如何实现)
官方地址:https://krpano.com/
中文教程:http://www.krpano360.com/
实现:2:1的全景在PC端,可以预览,左右上下鼠标移动,能够放大缩小,移动端也完美具备这些需求,完全符合我的需求,并且没有锯齿
优点:能满足大部分对于全景图的需求,对接简单的漫游,傻瓜式操作,有个类似图形化界面工具,可以直接添加热点(720云的底层也是用krpano写的)
缺点:首先就是这款是付费的,而且159欧元的价格,换算人民币就是1300+,还是让不少人劝退的,其次就是很多都是插件包自带的脚本,相当于一个成熟的商品,可修改性就很差。

二、用krpano之前的一些知识准备

xml文件是什么?
很多人和接触过一些前端知识的人都会拿xml和html做一个比较,我这里就主要讲一下这二者的一下区别和联系把:
1、XML不是用来替换HTML的技术;

2、XML和HTML为不同的目的而设计;

3、XML设计的核心是包含和传输数据,而HTML设计的核心是显示数据。
然后我自己也查看了一些资料,有一位大佬写的笔记写的很好,想深入学习的朋友可以看看哦。

三、krpano的购买、下载、注册

购买krpano
购买前需要一张双币信用卡或者paypal账户(类似我们的支付宝)
进入购买的官网:(https://krpano.com/buy)

这里的159欧元的是基础内核款的,项目在各种设备上包括手机浏览器上都是没有问题的。
首次购买购买基础款就可以拉,如果有必要在购买去除右侧菜单中krpano版权信息的299欧元。
输入邮件地址这个很重要,你购买以后官方会通过邮箱将注册码发给你。
(看不懂英文的小伙伴,krpano官网都是支持英汉互译,谷歌浏览器在右上方)
下载krpano
直接进入官网:https://krpano.com/download/
在这里插入图片描述
可以看到win、osx、Linux三大主流版本的压缩包,我的是win64位,就直接下载了(由于是外国网站,下载速度比较慢)
注册krpano
这里需要注意的一点,之所以需要购买注册码,也就是区分用户,也就是如果你所使用的krpano程序当前所登录的系统用户没有注册,就会有很明显的水印(这也是本人一开始和很绝望的一点)
打开下载的安装包解压,在文件中找到krpano Tools.exe
在这里插入图片描述
只要是新版本都会弹出一个输入注册码的框,直接复制官方邮箱发你的拿一串东西就好了
更详细的步骤可以看http://www.krpano360.com/buykrpano/

四、做一个简单的漫游全景图

弄好一切以后呢,就开始我们使用这个插件的环节拉,首先,得去找度娘找几张全景图(这里的全景图最好是2:1的
以win32位为例,解压好的文件夹可以看到很多个bat文件,具体的实现功能我就直接截图拉
在这里插入图片描述
这里官方建议是使用MAKE VTOUR (VR-OPT) droplet.bat,直接将找好的图片拖入这个指令程序中。
在这里插入图片描述
则会弹出命令提示符窗口,有些电脑会直接执行,并且生成一个文件夹,而我的电脑需要完成几个指令
在这里插入图片描述
完成这些以后,我们就可以打开生成的文件夹(文件夹的名字不一定会小编的一样),点击里面的
在这里插入图片描述

如果点击了html文件也没有关系,找到最开始的krpano文件夹,找到krpano Testing Server.exe直接启动
在这里插入图片描述
当启动打开网页就可以看到展示的图片拉
在这里插入图片描述
由于小编也是没有钱,并未购买,所以可以看到还是有很多水印的,但是基本的功能是可以实现的
如果没有看懂的小伙伴这里有个视频讲解欢迎食用哦https://haokan.baidu.com/v?vid=3791900632166741117&pd=bjh&fr=bjhauthor&type=video
当然这个时候就会有人问,热点是如何实现的呀(这里的热点是全景图的一个叫法,其实就是一个光标,比如跳转到下一张图的工具),由于小编也是没有购买,所以其实这个功能是购买注册码以后是可以实现的,如果购买了注册码在生成文件夹里面会多带有一个生成文件夹名_editor.html文件,这个里面会直接由图形化界面工具,是可以添加热点的。
也可也去看看购买注册码后的视频展示:https://v.qq.com/x/page/m0133n9wcka.html

五、总结

1.关于软件注册码付费问题
其实大家都看到了krpano的功能应该都是有小小的心动,但是价格确实让人劝退,我看了很多资料,其实是由破解版本和低价购买的方式的,后期我会专门更新一篇博客。
2.代码端问题
可能很多小伙伴作为程序员,看到这么简单的操作,都会觉得好像没有啥挑战性,也体现不出自己的技术,关于这块,其实还是会由代码端的操作,而且就是前面所说的xml文件的操作,其实krpano这款插件有点类似MYSQL数据库又有图形化界面工具也有代码端输入输出,后续我继续出关于这款全景图的使用经验,这也是我以后的一个方向。
3.自己总结的全景图三个核心问题
全景图片的调节问题:对于一个做产品,就得想到怎么样让自己的团队,以及客户更加简单高效的完成一个项目,而这个全景图的拍摄不可能每次都会像百度搜索的刚好2:1,而前端工程师能不能使用css样式就可以完成这样的调节。(当然如果我想到了也会分享给大家)
热点的安放和交互问题:做一个全景场景不可能是单单的一张图片,如果使用自己熟悉的插件或者语言实现就是一个重要的内容。
关于热点跟踪问题:现在的webAR.js和最新版本的three.js都是可以实现追踪效果的,而krpano也是可以的
关于移动端用到陀螺仪和重力感应:这个可以直接使用插件gyro.js

 <plugin name="skin_gyro"         keep="true"  url="%SWFPATH%/plugins/gyro.js"  enabled="false" camroll="true" friction="0" velastic="0" onavailable="set(layer[skin_btn_gyro].visible,true); skin_onresize();" />

最后,这是本人第一次写博客,自己也不是什么前端大佬,如果有错误得地方多多包涵,欢迎指点,路过的大佬不喜勿喷。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/63530.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

全景图的获取以及HTML页面显示全景图

目录 前言 1. 使用全景相机拍摄 2.手机app拍摄 3.使用爬虫爬取 二、全景图显示 总结 前言 随着前端技术的不断发展&#xff0c;图像的展示越来越重要&#xff0c;本文就介绍了全景图获取与显示的基础内容。 一、全景图片获取方法 1. 使用全景相机拍摄 拍摄的图片在2维显示下…

PTGui+PS生成全景图

1.打开PTGui&#xff0c;加载影响&#xff0c;拖入需要生成的全景图文件 2.点击对齐影像 3.点击创建全景图片 4.把生成的全景图导入到PS&#xff0c; 由于生成的全景图天空是空缺的&#xff0c;需要使用PS修复 套索选中黑色区域&#xff0c;右击填充即可。如遇到内存不足&#…

百度全景图/内景图切换示例

先看效果&#xff1a; 外景图 内景图&#xff1a; 具体代码&#xff1a; <!DOCTYPE html> <html> <head><meta http-equiv"Content-Type" content"text/html; charsetutf-8" /><meta name"viewport" content&qu…

什么是全景图?如何进行vr全景图拍摄

照片可以记录生活中的精彩的片段&#xff0c;而且照片的种类也分为很多&#xff0c;比如人像图&#xff0c;美食图&#xff0c;风景图等&#xff0c;其中有一种照片称为大像素全景图&#xff0c;大像素是全景的一种比较超高清的全景图&#xff0c;他不仅可以保留vr全景技术的所…

自己制作并发布720°VR全景图

大疆内置的全景图不好用&#xff0c;导出就成了平面图了&#xff0c;只能在他的“天空之城”上看&#xff0c;很不方便&#xff0c;而且他的全景图像素降低了&#xff0c;所以我们要自己制作。 1、先用大疆或者其它设备拍一组全景照。 2、然后下载并安装“PTGui”软件&#xff…

浪潮信息Inspur KOS性能及稳定性位列前茅 与万里安全数据库GreatDB高效兼容

为满足企业在数据安全、产品可控等数字化转型中的多样化需求&#xff0c;浪潮信息正基于技术与应用的深厚积累&#xff0c;持续优化创新产品及服务能力&#xff0c;助力企业在数智化时代下构筑黑心竞争力。日前&#xff0c;浪潮信息打造的Inspur KOS V5与万里安全数据库软件Gre…

随便聊聊浪潮开务数据库

今天这个话题挺随意&#xff0c;我们来聊聊浪潮开务数据库&#xff0c;原因主要是我的微信朋友圈被这个数据库刷屏了。当然我对这款号称多模数据库的非开源数据库也很感兴趣&#xff0c;也有很多疑问&#xff0c;希望各位专家能帮忙答疑解惑&#xff0c;揭开这款即将发布的 Kai…

浪潮信息推出服务器操作系统Inspur KOS的底气与豪气

近日&#xff0c;浪潮信息正式发布了其基于Linux内核、OpenAnolis等开源成果自主研发的服务器操作系统Inspur KOS&#xff0c;这为本就热闹非凡的自主操作系统市场再次带来涟漪。 何以推出Inspur KOS&#xff1f; 浪潮信息副总裁张东表示&#xff0c;“智慧时代&#xff0c;计…

20220624使用python3通过近6期的号码生成双色球红球

20220624使用python3通过近6期的号码生成双色球红球 2022/6/24 18:33 https://zst.cjcp.com.cn/shdd/ssq-hq.html 双色球红球杀号 首先获取近100期的双色球的红球号码。 【本例子以2022-06-21号算号为例子】 获取最近的6期的号码&#xff1a; 04 06 12 13 17 31 09 14 18 23…

php双色球(完整)

显示效果&#xff1a; 代码&#xff1a; <?php // 红色球号码区$red range(1, 33);// 随机选出6位数字for ($i0; $i < 6; $i) { $num array_rand($red); $redArr[] $red[$num];unset($red[$num]);}// 将选出来的6位数字小于10的补零foreach ($redArr as $v) {$red_b…

Proteus8.11的卸载与安装

写在前面&#xff1a;本来之前根据公众号的资料安装过&#xff0c;但是最近突然莫名其妙开始闪退&#xff0c;写的数码管显示程序在别人的电脑能跑&#xff0c;自己的数码管显示程序总闪退&#xff0c;搜索以后得知可能是软件安装的问题&#xff0c;就打算重装。卸载安装兜兜转…

《流浪地球》中的人工智能Moss背叛人类了吗?

编者按&#xff1a;《流浪地球》实在太火了&#xff0c;整个网络都在讨论这部电影。看过电影的人&#xff0c;一定记得这句经典台词&#xff0c;但刘培强决定要牺牲自己去点燃木星时&#xff0c;人工智能Moss说到&#xff0c;“让人类永远保持理智&#xff0c;确实是一种奢求”…

热分析TG-DTG-DTA-DSC介绍

热分析&#xff1a;1903年由Tammann提出&#xff0c;指用固定的速率加热或冷却物质&#xff0c;然后通过测量物质物理性质(如质量、温度、热焓、尺寸、机械、电学、磁学)研究物质物理变化(晶型转变、熔融、升华、吸附)和化学变化(脱水、分解、氧化、还原)的技术。我们常用到的热…

【化学信息学】药物研发的过程和意义

药物研发的过程和意义 1. 药物研发过程简介2. 药物发现2.1 Target Discovery2.2 Target Validation2.3 Lead Compound Identification2.4 Lead Optimization 3. 临床前药物开发4. 药物设计的意义5. 药物研发案例&#xff1a;卡托普利参考资料 1. 药物研发过程简介 现代药物的研…

【ChatGpt体验】ubuntu18安装Cursor编译器

国内使用chatgpt的话比较麻烦&#xff0c;找了好多教程都不太行&#xff0c;突然看到了OpenAI推出的编写代码神器Cursor。赶紧来上手体验一波~~ Cursor 官网传送门&#xff1a;Cursor windows的话直接安装即可&#xff0c;我这里使用的是ubuntu18&#xff0c;需要升级下相应…

用户注册 v1 -根据手机号注册用户

注册流程图 1. 校验手机号是否合法 public boolean verifyPhone(String phone) {Pattern pattern Pattern.compile("^[1]\\d{10}$"); // 正则&#xff1a;手机号&#xff08;简单&#xff09;, 1字头&#xff0b;10位数字即可.return pattern.matcher(phone).matc…

unity(登录注册用手机号短信验证)

短信验证 1、短信验证我是通过mob的SMSSDK实现的&#xff08;free&#xff09; 官网下载&#xff1a;http://www.mob.com/wiki/detailed?wikiSMSSDK_for_Unity3D&id23 2、在mob上注册一个账号&#xff0c;创建应用获得key和secret 替换案例中demo中的key和secret&#x…

chatgpt赋能python:Python如何设置字体大小:完美掌握方法

Python如何设置字体大小&#xff1a;完美掌握方法 你是否想要掌握Python如何设置字体大小&#xff1f;如果答案是肯定的&#xff0c;那么你来到了正确的地方。在本文中&#xff0c;我将向您介绍Python如何设置字体大小&#xff0c;以帮助您在编写代码时达到最佳效果。 为什么…

chatgpt赋能python:Python中文SEO设置指南

Python中文SEO设置指南 随着中国市场的不断扩大&#xff0c;越来越多的企业和开发者开始将目光投向了中文市场。而在中文市场&#xff0c;优化网站的SEO是至关重要的。在Python编程中也需要考虑中文SEO问题&#xff0c;因此本文将介绍如何在Python中设置中文SEO。 什么是中文…

语音抑郁症研究框架

1、数据集 MODMA 抑郁症语音数据集&#xff1a;http://modma.lzu.edu.cn DAIC-WOZ 抑郁症语音数据集&#xff1a;https://dcapswoz.ict.usc.edu AViD-Corpus抑郁症语音数据集&#xff1a;http://avec2013-db.sspnet.eu 2、特征提取工具 openSMILE&#xff1a;https://www.…