javascript实现3D效果-示例4
2012-09-14 22:07
399 查看
javascript实现3D效果-示例4
<html>
<body>
<style>
html {overflow:hidden}
body, .screen {background:#000; overflow:hidden; width:100%; height:100%; position:absolute; margin:0; padding:0}
#screen {left:0; top:0; zoom:1}
#screen span {position:absolute; font-size:0; line-height:0; overflow:hidden}
</style>
<div id="screen" class="screen"></div>
<script>
var srcScreen=document.getElementById("screen");
var x0=300,y0=300,z0=0,R=100,square0=20,square;
var scale=0.5,angle0=4;
var Ay=45;
function Point(x0,y0,R,angle,bgcolor,square0)
{
var spanObj=document.createElement("span");
srcScreen.appendChild(spanObj);
this.square0=square0;
this.x0=x0;
this.y0=y0;
this.R=R;
this.angle=angle;
spanObj.style.width=square0;
spanObj.style.height=square0;
spanObj.style.background=bgcolor;
this.run=function()
{
spanObj.style.left=x0+Math.round(Math.sin(angle*Math.PI/180)*R)+'px' ;
spanObj.style.top=y0+Math.round(Math.cos(angle*Math.PI/180)*Ay)+'px';
//spanObj.style.top=y0+'px';
spanObj.style.background="rgb("+(125*Math.floor((0.5+Math.sin((angle-90)*Math.PI/180))))+",155,155)";
square=Math.round(square0*(1+(Math.cos(angle*Math.PI/180)*scale)));
spanObj.style.zIndex=square;
spanObj.style.width=square;
spanObj.style.height=square;
angle=angle+angle0;
}
}
/*
参数说明:new Point(x0,y0,R,angle,"red",square0);
圆心坐标:x0、y0
转动半径:R
初始角度:angel ,0、90...
背景颜色: red、blue ...
块大小:square0
*/
var array=new Array();
function init()
{
//中环
for(var i=0;i<20;i++)
{
array.push(new Point(300,300,R,i*18,"red",6));
}
//上环
for(var i=0;i<20;i++)
{
array.push(new Point(300,240,60,i*18,"red",6));
}
//下环
for(var i=0;i<20;i++)
{
array.push(new Point(300,360,60,i*18,"red",6));
}
//中间轴线
for(var i=0;i<20;i++)
{
array.push(new Point(300,200+i*12,0,0,"white",2));
}
}
init();
function run()
{
for(var i=0;i<array.length;i++)
{
array[i].run();
}
}
setInterval("run()",100);
</script>
</body>
</html>
效果图如下
<html>
<body>
<style>
html {overflow:hidden}
body, .screen {background:#000; overflow:hidden; width:100%; height:100%; position:absolute; margin:0; padding:0}
#screen {left:0; top:0; zoom:1}
#screen span {position:absolute; font-size:0; line-height:0; overflow:hidden}
</style>
<div id="screen" class="screen"></div>
<script>
var srcScreen=document.getElementById("screen");
var x0=300,y0=300,z0=0,R=100,square0=20,square;
var scale=0.5,angle0=4;
var Ay=45;
function Point(x0,y0,R,angle,bgcolor,square0)
{
var spanObj=document.createElement("span");
srcScreen.appendChild(spanObj);
this.square0=square0;
this.x0=x0;
this.y0=y0;
this.R=R;
this.angle=angle;
spanObj.style.width=square0;
spanObj.style.height=square0;
spanObj.style.background=bgcolor;
this.run=function()
{
spanObj.style.left=x0+Math.round(Math.sin(angle*Math.PI/180)*R)+'px' ;
spanObj.style.top=y0+Math.round(Math.cos(angle*Math.PI/180)*Ay)+'px';
//spanObj.style.top=y0+'px';
spanObj.style.background="rgb("+(125*Math.floor((0.5+Math.sin((angle-90)*Math.PI/180))))+",155,155)";
square=Math.round(square0*(1+(Math.cos(angle*Math.PI/180)*scale)));
spanObj.style.zIndex=square;
spanObj.style.width=square;
spanObj.style.height=square;
angle=angle+angle0;
}
}
/*
参数说明:new Point(x0,y0,R,angle,"red",square0);
圆心坐标:x0、y0
转动半径:R
初始角度:angel ,0、90...
背景颜色: red、blue ...
块大小:square0
*/
var array=new Array();
function init()
{
//中环
for(var i=0;i<20;i++)
{
array.push(new Point(300,300,R,i*18,"red",6));
}
//上环
for(var i=0;i<20;i++)
{
array.push(new Point(300,240,60,i*18,"red",6));
}
//下环
for(var i=0;i<20;i++)
{
array.push(new Point(300,360,60,i*18,"red",6));
}
//中间轴线
for(var i=0;i<20;i++)
{
array.push(new Point(300,200+i*12,0,0,"white",2));
}
}
init();
function run()
{
for(var i=0;i<array.length;i++)
{
array[i].run();
}
}
setInterval("run()",100);
</script>
</body>
</html>
效果图如下
相关文章推荐
- javascript实现3D效果-示例1
- javascript实现3D效果-示例2
- javascript实现3D效果-示例3
- JavaScript实现的DOM绘制柱状图效果示例
- JavaScript实现的3D球面标签云效果
- Android实现动态向Gallery中添加图片及倒影与3D效果示例
- JavaScript实现的3D球面标签云效果
- 原生JavaScript实现精美的淘宝轮播图效果示例【附demo源码下载】
- 情人节 3d 玫瑰javascript 代码实现 效果很华丽
- JavaScript通过mouseover()实现图片变大效果的示例
- 原生JavaScript实现的简单放大镜效果示例
- JavaScript实现的3D球面标签云效果
- 【CSON原创】javascript实现3D涂鸦效果
- 示例1:JavaScript实现“振屏”效果
- JavaScript实现简单的文本逐字打印效果示例
- JavaScript实现的3D球面标签云效果
- JavaScript实现的3D球面标签云效果
- javascript实现下雪效果【实例代码】