DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> HTML基礎知識 >> HTML5詳解 >> 世界上最短的時鐘代碼!更短的,有木有?
世界上最短的時鐘代碼!更短的,有木有?
編輯:HTML5詳解     

一.簡介

Processing.JS作者是John Resig,這是繼Jquery之後,他的第二個力作。

Processing.JS提供了教學可視化的編程語言及運行環境。通過編寫processing程序,教師可以將復雜的物理、化學、數學原理形象的展示給學生。比如繪制各種曲線圖,波線,粒子,繪制分子結構,當然在生理衛生課上還可以繪制一群小蝌蚪在游泳等動態的圖形。

Processing.JS是一個開放的編程語言,在不使用Flash或Java小程序的前提下, 可以實現程序圖像、動畫和互動的應用。 
Processing.JS使用JavaScript繪制形狀sharp和操作Html5 canvas元素產生圖像動畫。 
Processing.JS是輕量,易於了解掌握,並提出一個理想的工具,可視化的數據,創建用戶界面和開發基於Web的游戲。

 

 

二.核心函數

JavaScript Code復制內容到剪貼板
  1. // Global variables 全局變量  
  2. int radius = 50.0;  
  3. int X, Y;  
  4. int nX, nY;  
  5. int delay = 16;  
  6. // Setup the Processing Canvas初始化設置  
  7. void setup(){  
  8.   size( 200, 200 );  
  9.   strokeWeight( 10 );  
  10.   frameRate( 15 );  
  11.   X = width / 2;  
  12.   Y = width / 2;  
  13.   nX = X;  
  14.   nY = Y;   
  15. }  
  16. // Main draw loop 主要繪畫函數功能  
  17. void draw(){  
  18.   radius = radius + sin( frameCount / 4 );  
  19.   // Track circle to new destination  
  20.   X+=(nX-X)/delay;  
  21.   Y+=(nY-Y)/delay;  
  22.   // Fill canvas grey  
  23.   background( 100 );  
  24.   // Set fill-color to blue  
  25.   fill( 0, 121, 184 );  
  26.   // Set stroke-color white  
  27.   stroke(255);  
  28.   // Draw circle  
  29.   ellipse( X, Y, radius, radius );                   
  30. }  
  31. // Set circle's next destination 當用戶鼠標在 Canvas移動時產生的action  
  32. void mouseMoved(){  
  33.   nX = mouseX;  
  34.   nY = mouseY;   
  35. }  

 

三.世界最短的時鐘代碼誕生

JavaScript Code復制內容到剪貼板
  1. void draw() {  
  2. size(200, 200);background(0); fill(80); noStroke(); ellipse(100, 100, 160, 160); stroke(255);  
  3. line(100, 100, cos( TWO_PI*second()/60- HALF_PI) * 70 + 100, sin(TWO_PI*second()/60- HALF_PI) * 70 + 100);  
  4. line(100, 100, cos( TWO_PI*minute()/60- HALF_PI) * 60 + 100, sin(TWO_PI*minute()/60- HALF_PI) * 60 + 100);  
  5. line(100, 100, cos(TWO_PI*(hour()%12)/12- HALF_PI) * 50 + 100, sin(TWO_PI*(hour()%12)/12- HALF_PI) * 50 + 100);  
  6. }  

可以看得出,代碼語意化非常強,一個圓,三條線,這也是這個框架所要達到的目的之一。

 

 

四.完整代碼

XML/Html Code復制內容到剪貼板
  1. 01  
  2. <!DOCTYPE Html>  
  3. <Html>  
  4. <head>  
  5. <body>  
  6. <script src="http://files.cnblogs.com/iamzhanglei/processing.JS" type="text/Javascript"></script>  
  7. <script type="application/processing">  
  8. void draw() {  
  9. size(200, 200);background(0); fill(80); noStroke(); ellipse(100, 100, 160, 160); stroke(255);  
  10. line(100, 100, cos( TWO_PI*second()/60- HALF_PI) * 70 + 100, sin(TWO_PI*second()/60- HALF_PI) * 70 + 100);  
  11. line(100, 100, cos( TWO_PI*minute()/60- HALF_PI) * 60 + 100, sin(TWO_PI*minute()/60- HALF_PI) * 60 + 100);  
  12. line(100, 100, cos(TWO_PI*(hour()%12)/12- HALF_PI) * 50 + 100, sin(TWO_PI*(hour()%12)/12- HALF_PI) * 50 + 100);  
  13. }  
  14. </script>  
  15. <canvas>你的浏覽器不支持Html5,請使用谷歌、IE9或者火狐浏覽器··</canvas>  
  16. </body>  
  17. </Html>  
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved