基于Three.js实现360度全景图片


Posted in Javascript onDecember 30, 2018

Three.js 是一款运行在浏览器中的3D引擎, 处理三维效果。在一些相机的官网首页中,经常有一张图在旋转,图上面悬浮着文字。这种效果是如何做出来的呢?先看效果,再讲解。

基于Three.js实现360度全景图片

1).建立一个java web 工程(或者其他工程), 因为three.js 的全景图要通过服务端浏览(安全的考虑)

基于Three.js实现360度全景图片

2).在上面的结构中,只有css中的index.css是自定义的,其余css和js都属于three.js自带的工具文件。包含图片在内,已经上传资源了,点击此处下载。

3).index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!doctype html>
<html lang="zh">
<head>
 <meta charset="UTF-8">
 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <title>基于Three.js的360度全景图片</title>
 <link rel="stylesheet" type="text/css" href="css/normalize.css" />
 <link rel="stylesheet" type="text/css" href="css/default.css" >
 <link rel="stylesheet" type="text/css" href="css/index.css" >
 <script src="js/three.min.js"></script>
 <script src="js/photo-sphere-viewer.min.js"></script>
</head>
<body>
 <div class="container">
 <div class="description">
  <h1>苑中遇雪</h1>
  <p> 紫禁仙舆诘旦来,青?缫R型?禾ā?lt;/p>
  <p>不知庭霰今朝落,疑是林花昨夜开。</p>
 </div>
 <div id="my-pano" class="pano"></div>
 </div> 
</body>
<script>
 window.onload = function() {
  var div = document.getElementById('my-pano');
  var PSV = new PhotoSphereViewer({
  // Panorama, given in base 64
  panorama: 'images/snow.jpg',

  // Container
  container: div,

  autoload:true,

  // Deactivate the animation
  time_anim: 2000,

  // Display the navigation bar
  navbar: true,

  // Resize the panorama
  size: {
  width: '70%',
  height: 700
  }
 });
 };
 </script>
</html>

4).index.css

body{ text-align:center} 
.container {
 margin:0 auto;
}
.pano {
 margin:0 auto;
 z-index:1;
}
.description {
 width:400px;
 left:350px;
 margin-top:40px;
 z-index:100;
 position:absolute;
 float:left; 
}
.description h1 {
 font-size:40px;
 color:#FFF
}
.description p {
 font-size:22px;
 color:#FFF
}

5).根据实际应用在浏览器测试,全景图可自动旋转、可鼠标拖拽转动、可全屏

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery 与NVelocity 产生冲突的解决方法
Jun 13 Javascript
jQuery头像裁剪工具jcrop用法实例(附演示与demo源码下载)
Jan 22 Javascript
JavaScript中Number对象的toFixed() 方法详解
Sep 02 Javascript
炫酷的js手风琴效果
Oct 13 Javascript
JS DOMReady事件的六种实现方法总结
Nov 23 Javascript
jQuery中页面返回顶部的方法总结
Dec 30 Javascript
使用BootStrap进行轮播图的制作
Jan 06 Javascript
VUE开发一个图片轮播的组件示例代码
Mar 06 Javascript
微信小程序判断页面是否从其他页面返回的实例代码
Jul 03 Javascript
JavaScript实现指定数量的并发限制的示例代码
Mar 10 Javascript
vue 保留两位小数 不能直接用toFixed(2) 的解决
Aug 07 Javascript
js canvas实现俄罗斯方块
Oct 11 Javascript
three.js实现圆柱体
Dec 30 #Javascript
three.js实现炫酷的全景3D重力感应
Dec 30 #Javascript
Three.js实现3D机房效果
Dec 30 #Javascript
JavaScript对象的特性与实践应用深入详解
Dec 30 #Javascript
three.js搭建室内场景教程
Dec 30 #Javascript
Three.JS实现三维场景
Dec 30 #Javascript
Three.js实现简单3D房间布局
Dec 30 #Javascript
You might like
phpMyAdmin下载、安装和使用入门教程
2007/05/31 PHP
精通php的十大要点(上)
2009/02/04 PHP
php使用str_replace替换多维数组的实现方法分析
2017/06/15 PHP
php 调用百度sms来发送短信的实现示例
2018/11/02 PHP
PHP中将一个字符串部分字符用星号*替代隐藏的实现代码
2019/09/08 PHP
javascript appendChild,innerHTML,join性能比较代码
2009/08/29 Javascript
js 设置选中行的样式的实现代码
2010/05/24 Javascript
JavaScript:Div层拖动效果实例代码
2013/08/06 Javascript
浅谈JavaScript数据类型
2015/03/03 Javascript
javascript中mouseover、mouseout使用详解
2015/07/19 Javascript
jQuery实现两款有动画功能的导航菜单代码
2015/09/16 Javascript
js判断主流浏览器类型和版本号的简单实现代码
2016/05/26 Javascript
js实现打地鼠小游戏
2017/02/13 Javascript
最全正则表达式总结:验证QQ号、手机号、Email、中文、邮编、身份证、IP地址等
2017/08/16 Javascript
解决js ajax同步请求造成浏览器假死的问题
2018/01/18 Javascript
使用Vue.js和Element-UI做一个简单登录页面的实例
2018/02/23 Javascript
vue.js与后台数据交互的实例讲解
2018/08/08 Javascript
深入理解NodeJS 多进程和集群
2018/10/17 NodeJs
浅谈ng-zorro使用心得
2018/12/03 Javascript
浏览器事件循环与vue nextTicket的实现
2019/04/16 Javascript
webpack HappyPack实战详解
2019/10/08 Javascript
解决VUEX的mapState/...mapState等取值问题
2020/07/24 Javascript
python中list列表的高级函数
2016/05/17 Python
python3制作捧腹网段子页爬虫
2017/02/12 Python
深入理解python中函数传递参数是值传递还是引用传递
2017/11/07 Python
python利用高阶函数实现剪枝函数
2018/03/20 Python
Python解决两个整数相除只得到整数部分的实例
2018/11/10 Python
详解python读取和输出到txt
2019/03/29 Python
python占位符输入方式实例
2019/05/27 Python
python调用函数、类和文件操作简单实例总结
2019/11/29 Python
Windows下python3安装tkinter的问题及解决方法
2020/01/06 Python
宠物店的创业计划书范文
2014/01/11 职场文书
建筑工程毕业生自我鉴定
2014/01/14 职场文书
主持词开场白
2014/03/17 职场文书
全国优秀教师事迹材料
2014/08/26 职场文书
高中语文教材(文学文化常识大全一)
2019/08/13 职场文书