首页 JS特效 其它特效 html5的canvas实现几何模型3D运动动画效果

html5的canvas实现几何模型3D运动动画效果

html5的canvas实现几何模型3D运动动画效果

html5的canvas实现几何模型3D运动动画效果

JS片段:

<脚本>
var {atan2,sqrt,sin,cos,PI,acos} = 数学;
函数project3D(x,y,z,vars){
x-=vars.camX,y-=vars.camY,z-=vars.camZ;
p=atan2(x,z),d=sqrt(z*z+x*x),x=sin(p-vars.yaw)*d,z=cos(p-vars.yaw)*d;
p=atan2(y,z),d=sqrt(y*y+z*z),y=sin(p-vars.pitch)*d,z=cos(p-vars.pitch)*d;
n=-9,b=1,l=9,d=1,e=0,f=0,g=x,h=z,k=(h-f)*(l-n)-(g-e)*(d-b) ,m=((g-e)*(b-f)-(h-f)*(n-e))/k;
返回 {x:vars.cx+(n+m*(l-n))*vars.scale,y:vars.cy+y/z*vars.scale,d:sqrt(x*x+y*y+z*z )};
}
函数高程(x,y,z){
返回 acos(z / sqrt(x*x+y*y+z*z));
}
函数细分(形状,细分){
var t=shape.segs.length;
for(var i=0;i var x1=shape.segs[i].a.x;
var y1=shape.segs[i].a.y;
var z1=shape.segs[i].a.z;
var x2=(shape.segs[i].b.x-x1)/细分;
var y2=(shape.segs[i].b.y-y1)/细分;
var z2=(shape.segs[i].b.z-z1)/细分;
shape.segs[i].b.x=x1+x2;
shape.segs[i].b.y=y1+y2;
shape.segs[i].b.z=z1+z2;
var x3=x2;
var y3=y2;
var z3=z2;
for(var k=0;k<细分-1;++k){
shape.segs.push(new Seg(x1+x2,y1+y2,z1+z2,x1+x2+x3,y1+y2+y3,z1+z2+z3));
x2+=x3;
y2+=y3;
z2+=z3;
}
}
}


这是一款很有空间感的基于html5 canvas实现的几何模型3D运动动画效果,好看的3D模型动画效果。

免责声明

本站所有资源均由网友贡献或各大下载网站转载。请自行检查软件的完整性!本站所有资源仅供学习参考。请不要将它们用于商业目的。否则,一切后果由您负责!如有侵权,请联系我们删除。联系方式:admin@php.cn

相关文章

18种垂直分页导航按钮动画特效 18种垂直分页导航按钮动画特效

18 Jan 2017

这是一组效果非常炫酷的垂直分页导航按钮动画特效。这组特效通用18种效果,可以用于制作幻灯片、页面切换和其它容器组件切换的分页导航按钮。

生成器函数如何提高 Python 问题解决能力? 生成器函数如何提高 Python 问题解决能力?

26 Oct 2024

生成器函数:它们在解决问题中的效用生成器函数以其yield语句为特征,提供了一种独特的方法......

一款jquery特效编写的大度宽屏焦点图切换特效的实例代码_jquery 一款jquery特效编写的大度宽屏焦点图切换特效的实例代码_jquery

16 May 2016

焦点图显示区域有固定的宽度,当前显示宽度之外是一个半透明层显示的其它的焦点图片,最好的是,此特效兼容ie6以及其它浏览器。

JS实现三级折叠菜单特效,其它级可自动收缩_javascript技巧 JS实现三级折叠菜单特效,其它级可自动收缩_javascript技巧

16 May 2016

这篇文章主要介绍了JS实现三级折叠菜单特效,其它级可自动收缩,需要的朋友可以参考下

CSS动画教程:手把手教你实现脉冲特效 CSS动画教程:手把手教你实现脉冲特效

21 Oct 2023

CSS动画教程:手把手教你实现脉冲特效,需要具体代码示例引言:CSS动画是网页设计中常用的一种效果,它可以为网页增添活力和视觉吸引力。本篇文章将带您深入了解如何利用CSS实现脉冲特效,并提供具体的代码示例教您一步步完成。一、了解脉冲特效脉冲特效是一种循环变化的动画效果,通常用在按钮、图标或其他元素上,使其呈现出一种跳动、闪烁的效果。通过CSS的动画属性和关键

莱特币的出块时间:了解其交易速度背后的机制 莱特币的出块时间:了解其交易速度背后的机制

12 Jul 2024

莱特币是一种领先的加密货币,以其快速的交易速度而闻名。这种效率的核心是它的区块时间——添加......

jQuery插件jFade实现鼠标经过的图片高亮其它变暗_jquery jQuery插件jFade实现鼠标经过的图片高亮其它变暗_jquery

16 May 2016

本文给大家介绍的是一款重点突出的jQuery特效插件效果,使用jFade实现鼠标经过的图片高亮其它变暗,非常实用,推荐给小伙伴们参考下。

比特币有什么实际价值 比特币有什么实际价值

17 Apr 2024

比特币的实际价值源于其稀缺性、去中心化、安全性和匿名性、网络效应、投机价值和价值储存等关键因素。它是一种去中心化的数字货币,没有固有价值,但其价值由其独特的特性和不断增长的用户网络所支撑。

C语言的特点及应用领域 C语言的特点及应用领域

18 Mar 2024

C语言的特点及应用领域作为一种被广泛应用的计算机编程语言,C语言具有独特的特点使其成为程序员们的首选。本文将详细探讨C语言的特点,以及它在各个应用领域中的具体应用,并给出相应的代码示例。一、C语言的特点简洁高效:C语言以其简洁而高效的特点受到广泛认可。它的语法结构清晰简洁,使得程序员能够用较少的代码实现复杂的功能。同时,C语言的执行效率高,可以快速地完成任务

See all articles See all articles

Hot Tools

jQuery+Html5实现唯美表白动画代码

jQuery+Html5实现唯美表白动画代码

jQuery+Html5实现唯美表白动画代码,动画效果很棒,程序员表白必备!

情侣浪漫表白js特效代码

情侣浪漫表白js特效代码

情侣浪漫表白js特效代码,这样的特效,可以用在婚纱摄影的网站上,也可以放在个人网站中,也还一个不错的特效,php中文网推荐下载!

简单js恋爱表白神器

简单js恋爱表白神器

简单原生js恋爱表白神器

碉堡的html5粒子动画表白特效

碉堡的html5粒子动画表白特效

碉堡的html5粒子动画表白特效代码,动画特效文字可以在代码里面进行更改,大家可以做个页面,大家可以自定义文字的输入是应该是非常受欢迎的,此HTML5特效非常美的。

jQuery响应式后台登录界面模板

jQuery响应式后台登录界面模板

jQuery响应式后台登录界面模板html源码,登录页面通过jquery来验证表单,判断用户名和密码是否符合要求,通常登录页面在企业网站或者商城网站都是必须要用到的页面,响应式的后台页面,当浏览器放大或者缩小,背景会根据浏览器来调整图片的大小!php中文网推荐下载!