¡¾¼òÊö¡¿
Õâ¸öϵÁеĿªÊ¼£¬²»´ú±íJavascriptÒì²½±à³ÌϵÁеĽáÊø£¬ÒÔºóÎÒ»¹»á¼ÌÐøÄǸöϵÁУ¬ÔÚÎÒµÄHTML5°æ3DʵÑéÊÒÒ²»áµ½´¦Óõ½Jscex¡£
µ«ÊÇÎÒ»¹ÊÇÖØÐ¿ªÕâ¸öϵÁУ¬ÒòΪËüȷʵÊÇÁíÍâÒ»¸öÖ÷Ì⣬ÁîÈ˴̼¤¡¢ÐË·Ü¡¢¼â½Ð£¬´Ì¼¤ÈËÀàÊÓÍøÄ¤Éñ¾µÄÖ÷Ì⣡
¡¾¹Û¿´´ËϵÁеÄÒªÇó¡¿
1.ÓÐÒ»¶¨µÄ¿Õ¼äÏëÏóÁ¦
2.ÓÐÁ¢Ì弸ºÎ»ù´¡¡¢ÊýѧºÍÎïÀí»ù´¡
3.Óлù±¾µÄ±à³Ì˼Ïë
4.Á˽âHTML5¡¢Javascript
5.Á˽âJscex¸ü¼Ñ
¡¾ÊʺÏÈËȺ¡¿
1.ÌìÌìдÔöɾ¸Ä²éÖÇÉÌϽµÕß
2.ÌìÌìдAJAXÓ¦ÓÃÖÇÉÌϽµÕß
3.ÌìÌìÍæÕâ¿ò¼Ü£¬ÄÇÀà¿âÉñÂíµÄÖÇÉÌϽµÕß
4.¶Ô¼ÆËã»ú3DͼÐÎѧÓÐ×ÅŨºñµÄÐËȤ
5.¶Ô±à³ÌÓïÑÔÓï·¨Óа®£¬¶ÔËã·¨ÎÞ°®Õß
¡¾3DºËÐÄ¡¿
ÒªÉî¿ÌÕÆÎÕ3DÓÎÏ·Ó붯»±à³ÌºËÐÄ£¬ÎÒÃÇÏÈÀ´¿´Ò»ÕÅͼ£¬ÎÒÃÇÔÙÊìϤ²»¹ýµÄͼ£¬Ò»¸öÕý·½Ì壬ÈçÏ£º
¿Ï¶¨ÓÐÈË˵£¬ÓÐûÓиã´í£¬ÕâÊÇÁ¢·½ÌåÂ𣿣¿£¿ºöÓÆÎÒÊÇÂ𣿣¿ÄÇôÎÒÃÇÔÚÊúÖ±·½ÏòÐýתһÏ£º
»òÕßÎÒÃÇÔÚˮƽ·½ÏòÐýתһÏ£º
»òÕßÎÒÃÇͬʱÐýתһÏ£¬¾ÍÊÇÎÒÃÇÔÙÊìϤ²»¹ýµÄÁ¢·½ÌåÁË£º
µ±ÎÒÃÇ¿´µ½Õâ¸öÁ¢·½ÌåµÄʱºò£¬ÎÒÃǰÑÁ¢·½Ìå·Ö±ðǰºóºÍˮƽÐýתÁËÒ»¶¨µÄ½Ç¶È£¬»òÕßÒ²¿ÉÒÔÕâôÈÏΪ------ÎÒÃÇÑÛ¾¦´¦ÓÚÁ¢·½ÌåµÄÓÒÉÏ·½¸©ÊÓËü£¬²ÅÄÜ¿´µ½Õâ¸ö»Ãæ¡£
ÎÒÃÇÒ²¿ÉÒÔÈÏΪÑÛ¾¦ÊÇÉãÏñ»ú£¬ÔÚ3D±à³ÌÖУ¬¶¼ÓÐÉãÏñ»úµÄ¸ÅÄ£¡
ËùÒÔ£¬3D±à³Ìµ±ÖУ¬ÎÒÃÇÔÚ³ÊÏÖ¶¯Ì¬µÄ3DͼÏñ£¬ÎÒÃÇ¿ÉÒÔÐýתÎïÌ壬Ҳ¿ÉÒÔÐýתÉãÏñ»ú¡£
¿Õ¼äÀïµÄËùÓе㶼ÓÐÒ»¸ö×ø±ê£¨x,y,z£©£º
¼ÙÉèÎÒÃÇÐýתÎïÌå¶ø·ÇÐýתÉãÏñ»úÀ´³ÊÏÖ3D¶¯»£¬3D¶¯»×îÖÕÒªÏÔʾÔÚÒ»¸öÖ»ÓÐX,Y¶þά¶ÈµÄÏÔʾÆ÷µ±ÖУ¬
¡¾ËùÒÔÎÒÃÇֻҪȡµ½¿Õ¼äËùÓеÄ×ø±êµÄ£¨x,y£©×ø±êÓ³Éäµ½ÏÔʾÆ÷ÉÏ£¬È»ºó¸ù¾ÝzµÄ´óС£¬ÉèÖÃ͸Ã÷¶È»òÕßÑÕÉ«µÈµÈÀ´ÌåÏÖÔ¶½üµÄ²ã´Î¸Ð¡£¡¿
ps£º(x,yµÄ×ø±ê»áËæ×ÅÉãÏñ»úµÄλÖöø·¢Éú±ä»¯£¬»áÒòΪzµÄ´óС²úÉúÆ«ÒÆ)
Õâ¾ÍÊÇ3D±à³ÌµÄºËÐĸÅÄî¡£
¡¾3D³õÊÔ¡¿
¼ÈÈ»JscexϵÁÐÊÇÒÔ»Ô²¿ªÊ¼£¬ÄÇôÕâ¸öϵÁоÍÒÔ»Çò¿ªÊ¼°É£¡
- <canvas id="myCanvas" width="480" height="300" style="border:1px solid #c3c3c3;">
- Your browser does not support the canvas element.
- </canvas>
- <script type="text/javascript">
- var c = document.getElementById("myCanvas");
- var ccxt = c.getContext("2d");
- var x = 150;
- var y = 150;
- var r = 100;
- var drawAsync = eval(Jscex.compile("async", function () {
- var j = 3;
- while (true) {
- cxt.strokeStyle = randomColor();
- cxt.moveTo(x - r, y);
- for (var i = x - r; i < x + r + 1; i++) {
- var tempY = Math.pow(r * r - (x - i) * (x - i), 1 / 2);
- var foldAngle = Math.PI / j;
- cxt.lineTo(i, y + tempY - tempY + (tempY * Math.cos(foldAngle)));
- }
- jj = j - 0.1;
- cxt.stroke();
- $await(Jscex.Async.sleep(100));
- }
- }));
- drawAsync().start();
- function randomColor() {
- //16½øÖÆ·½Ê½±íʾÑÕÉ«0-F
- var arrHex = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F"]; var strHex = "#";
- var index;
- for (var i = 0; i < 6; i++) {
- //È¡µÃ0-15Ö®¼äµÄËæ»úÕûÊý
- index = Math.round(Math.random() * 15);
- strHex += arrHex[index];
- }
- return strHex;
- }
- </script>
ÔÎÄÁ´½Ó£º http://www.cnblogs.com/iamzhanglei/archive/2011/09/20/2182025.html