编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

2,CSS3构建3D世界(css3实现3d效果教程)

wxchong 2024-08-06 03:18:48 开源技术 16 ℃ 0 评论

alpha轴,gamma轴,beta轴对应再设备上的位置

x,y,z轴对应再设备上以及旋转时对应展示

1,deviceorientation

设备的物理方向信息,表示一系列本地坐标系的旋角(alpha,beta,gamma)。

2,devicemotion

提供设备的加速信息。

3,compassneedscalibration

用于通知web站点使用罗盘信息校准上述事件。

例如:

// 物理方向信息 window.addEventListener('deviceorientation',function(event){
 //处理 event.alpha、event.beta及event.gamma},true);
// 获取重力加速度window.addEventListener('devicemotion',function(event){
 // 处理event.acceleration
 // x(y,z):设备在x(y,z)方向上的移动加速度值
 // event.accelerationIncludingGravity
 // 考虑了重力加速度后设备在x(y,z)
 // event.ratationRate
 // alpha,beta,gamma:设备绕x,y,z轴旋转的角度},true);
// 校准window.addEventListener('compassneedscalibration',function(event){
 alert('你的罗盘需要校准');
 event.preventDefault();},true);

z轴为轴:alpha的作用域为(0,360)。

x轴为轴:beta的作用域为(-180,180)。

y轴为轴:gamma的作用域(-90,90)。

摇一摇Demo

var speed = 30; // speedvar x = y = z = lastX = lastY = lastZ = 0;function deviceMotionHandler(eventData){
 var acceleration = event.accelerationIncludingGravity;
 x = acceleration.x;
 y = acceleration.y;
 z = acceleration.z;
 if(Math.abs(x-lastX) > speed || Math.abs(y-lastY) > speed || Math.abs(z-lastZ) > speed){
 //简单的摇一摇出发代码
 alert('摇起来');
 }}

球面投影

立方体投影

css3d库:css3d-engine

js3D库:parallax.js

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表