ภาษาไทย
<!-- http://www.downcodes.com/js --> <!-- bbs http://www.downcodes.com/bbs--> <head> <style> .point{ ตำแหน่ง: สัมบูรณ์; ความกว้าง: 10; ความสูง: 10;สีพื้นหลัง: #AAAAAA;ล้น: ซ่อน} </style> <script> ความเร็ว=4; คะแนน = อาร์เรย์ใหม่ (); มุม=ความเร็ว; rotXok=จริง; rotYok=จริง; rotZok=เท็จ; ฟังก์ชั่น Obj (div) {ส่งคืนสิ่งนี้;} objpro = Obj.prototype; objpro.moveTo=ฟังก์ชั่น(x,y,z){this.x=(x); this.y=(y); นี่.z=z; } คะแนน = อาร์เรย์ใหม่ (); ฟังก์ชั่น movemat(){ /* 2 - 1 1=1,2 2,3,7,6 / / 2=3,4 1,5,8,4 3 - 4 3=5,6 4=7,8 6 - 5 5=9,10 / / 6=11,12 7 - 8 7=13,14 8=15,16 */ pt1=Math.round(คะแนน[1].x); pt2=Math.floor(คะแนน[1].y); pt3=Math.floor(คะแนน[2].x); pt4=Math.floor(คะแนน[2].y); pt5=Math.floor(คะแนน[3].x); pt6=Math.floor(คะแนน[3].y); pt7=Math.floor(คะแนน[4].x); pt8=Math.floor(คะแนน[4].y); pt9=Math.floor(คะแนน[5].x); pt10=Math.floor(คะแนน[5].y); pt11=Math.floor(คะแนน[6].x); pt12=Math.floor(คะแนน[6].y); pt13=Math.floor(คะแนน[7].x); pt14=Math.floor(คะแนน[7].y); pt15=Math.floor(คะแนน[8].x); pt16=Math.floor(คะแนน[8].y); sq1="m "+pt1+","+pt2+" l "+pt3+","+pt4+" "+pt5+", "+pt6+" "+pt7+", "+pt8+" xe"; sq2="m "+pt9+", "+pt10+" l "+pt11+", "+pt12+" "+pt13+", "+pt14+" "+pt15+", "+pt16+" xe"; sq3="m "+pt3+", "+pt4+" l "+pt5+", "+pt6+" "+pt13+", "+pt14+" "+pt11+", "+pt12+" xe"; sq4="m "+pt1+", "+pt2+" l "+pt9+", "+pt10+" "+pt15+", "+pt16+" "+pt7+", "+pt8+" xe"; v1.path=sq1; v2.path=sq2; v3.path=sq3; v4.path=sq4} function init(){ for(i=1; i <=8; i++){ point[i]=new Obj('v'+i);} จุด[1].x=45; คะแนน[1].y=15; คะแนน[1].z=60; คะแนน[2].x=15; คะแนน[2].y=15; คะแนน[2].z=60; คะแนน[3].x=15; คะแนน[3].y=15; คะแนน[3].z=90; คะแนน[4].x=45; คะแนน[4].y=15; คะแนน[4].z=90; คะแนน[5].x=45; คะแนน[5].y=45; คะแนน[5].z=60; คะแนน[6].x=15; คะแนน[6].y=45; คะแนน[6].z=60; คะแนน[7].x=15; คะแนน[7].y=45; คะแนน[7].z=90; คะแนน[8].x=45; คะแนน[8].y=45; คะแนน[8].z=90; for(i=1; i <=8; i++){ point[i].moveTo(points[i].x,points[i].y,points[i].z)} } ฟังก์ชั่น rot(){ a =degToRad(มุม); a2=degToRad(มุม); สำหรับ(i=1; i <= 8; i++){ mat=[points[i].x,points[i].y,points[i].z-75,1]; rotX=[[1,0,0,0],[0,Math.cos(a),-Math.sin(a),0],[0,Math.sin(อันหนึ่ง),Math.cos(a) ,0],[0,0,0,1]]; rotY=[[Math.cos(a2),0,Math.sin(a2),0],[0,1,0,0],[-Math.sin(a2),0,Math.cos(a2) ,0],[0,0,0,1]]; rotZ=[[Math.cos(a),-Math.sin(a),0,0],[Math.sin(a),Math.cos(a),0,0],[0,0,1 ,0],[0,0,0,1]]; ถ้า(rotXok){mat=matrixMultiply(mat,rotX)}; ถ้า(rotYok){mat=matrixMultiply(mat,rotY)}; ถ้า(rotZok){mat=matrixMultiply(mat,rotZ)}; จุด[i].x=เสื่อ[0]; จุด[i].y=เสื่อ[1]; คะแนน[i].z=เสื่อ[2] + 75; จุด[i].moveTo(จุด[i].x,จุด[i].y,จุด[i].z); มูฟแมท(); } setTimeout('เน่า()',50); } ฟังก์ชั่น matrixMultiply(A,B) { var retVal=[0,0,0]; สำหรับ (var i=0;i<4;i++) { retVal[i]=0; สำหรับ (var s=0;s<4;s++) retVal[i] += A[s] * B[i][s] } กลับ retVal; } ปี่=3.14159; ฟังก์ชั่น degToRad(x) { กลับ (( x/(360/(2*pi)) )); } ฟังก์ชั่น rotok(oked){ Xok=document.getElementById('rotateX').checked; if(Xok){rotXok=true}else{rotXok=false} Yok=document.getElementById('rotateY').ตรวจสอบ; if(Yok){rotYok=true}else{rotYok=false} Zok=document.getElementById('rotateZ').ตรวจสอบ; ถ้า(Zok){rotZok=true}else{rotZok=false} } </script> <style type="text/css"> v:*{behavior:url(#default#VML);} </style> </head> <body bgcolor="black" text="darkblue"> <script> for(i=1; i <= 4; i++){ document.write('<v:shape id="v'+i+ '"filled="false" strokecolor="yellow" style="position:absolute;left:50;top:50;width:200;height:200" coordorigin="0, 0" coordsize="60,60"> ' +'<v:path v="m 0,0 l 100,0 100,100 0,100 0,100 xe"/></v:shape>'); }init();rot()</script> <br><br><br> <p><font color=red>//转载请注明出处:建站学院。</font></p>