EaselJS初窺

基礎使用:

canvas + stage

  • 繪制幾何圖形

HTML部分

<canvas id="myCanvas" width="300" height="200">
  easeljs簡單使用
</canvas>

<!-- 推薦開源CDN來選取需引用的外部JS //-->
<script src="http://cdn.gbtags.com/EaselJS/0.7.1/easeljs.min.js"></script>

JS部分

window.onload=function(){
  //獲取stage
  var canvas = document.getElementById("myCanvas");
  var stage = new createjs.Stage(canvas);

  function circle(){
    //生成圓形
    var circle = new createjs.Shape();
    circle.graphics.setStrokeStyle(2).beginStroke("rgba(0,0,0,.5)").beginFill("orange").drawCircle(0, 0, 50);
    circle.x = 55;
    circle.y = 100;
    
    //將生成圖形添加到stage中荤傲,并且調(diào)用update方法更新
    stage.addChild(circle);
    stage.update();
  }
  
  function rect(){
    //生成矩形
    var rect = new createjs.Shape();
    rect.graphics.beginFill("orange").drawRect(10, 10, 100, 100);
    rect.x = 120;
    rect.y = 40;
    
    //將生成圖形添加到stage中沦疾,并且調(diào)用update方法更新
    stage.addChild(rect);
    stage.update();
  }
  
  function polystar(){
    //生成多角形
    var polystar = new createjs.Shape();
    polystar.graphics.setStrokeStyle(5).beginStroke("orange").drawPolyStar(290,100,5,10,10,110);
    
    stage.addChild(polystar);  
    stage.update();
  }
  
  circle();
  rect();
  polystar();
}
效果圖

上方代碼中挪钓,多次用到:

stage.update();

可以通過添加一個Ticker類幫助避免多次調(diào)用update方法,添加以下代碼轩勘,刪除stage.update()即可;

createjs.Ticker.addEventListener("tick", handleTicker);
  function handleTicker(){
    stage.update();
  }
  • 圖形屬性修改及事件綁定
function circle(){
    //生成圓形
    var circle = new createjs.Shape();
    circle.graphics.beginFill("orange").drawCircle(0, 0, 50);
    
    //以下方式可以方便的修改圖形相關的屬性
    
    //修改圖形坐標
    circle.x = Math.floor(Math.random() * 200);
    circle.y = Math.floor(Math.random() * 350);
    
    //修改圖形縮放
    circle.scaleX = Math.floor(Math.random() * 2)+1;
    circle.scaleY = Math.floor(Math.random() * 2)+1;
    
    //修改alpha和旋轉(zhuǎn)
    circle.alpha = Math.random() * 1;
    circle.rotation = Math.floor(Math.random() * 60);
    
    //設置圖形相關的鼠標事件
    circle.on("click",handleClick,null,false);            
    circle.on("mouseout",handleMouseOut,null,false);
    
    //將生成圖形添加到stage中隘世,并且調(diào)用update方法更新
    stage.addChild(circle);
    stage.update();
  }
  
  function handleClick(e){
      alert("已經(jīng)點擊了圓形");
  }
  
  function handleMouseOut(e){
      console.log("鼠標移出了圓形");
  }
  • 生成文字
//繪制10個隨機屬性的文字
  function drawText(){
      for(var i=0;i<10;i++){
          var theText = new createjs.Text("極客標簽","normal 32px microsoft yahei","#222222");
          theText.x = Math.floor(Math.random() * 350);
          theText.y = Math.floor(Math.random() * 400);
          theText.rotation = Math.floor(Math.random() * 360);
          theText.alpha = Math.random() * 1;
          theText.color = "#"+Math.floor(Math.random()*16777215).toString(16);
          stage.addChild(theText);
          stage.update();
      }
  }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末可柿,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子丙者,更是在濱河造成了極大的恐慌复斥,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件械媒,死亡現(xiàn)場離奇詭異目锭,居然都是意外死亡评汰,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進店門痢虹,熙熙樓的掌柜王于貴愁眉苦臉地迎上來被去,“玉大人,你說我怎么就攤上這事奖唯〔依拢” “怎么了?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵臭埋,是天一觀的道長踪央。 經(jīng)常有香客問我,道長瓢阴,這世上最難降的妖魔是什么畅蹂? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮荣恐,結(jié)果婚禮上液斜,老公的妹妹穿的比我還像新娘。我一直安慰自己叠穆,他們只是感情好少漆,可當我...
    茶點故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著硼被,像睡著了一般示损。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上嚷硫,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天检访,我揣著相機與錄音,去河邊找鬼仔掸。 笑死脆贵,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的起暮。 我是一名探鬼主播卖氨,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼负懦!你這毒婦竟也來了筒捺?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤纸厉,失蹤者是張志新(化名)和其女友劉穎系吭,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體残腌,經(jīng)...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡村斟,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年贫导,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蟆盹。...
    茶點故事閱讀 38,163評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡孩灯,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出逾滥,到底是詐尸還是另有隱情峰档,我是刑警寧澤,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布寨昙,位于F島的核電站讥巡,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏舔哪。R本人自食惡果不足惜欢顷,卻給世界環(huán)境...
    茶點故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望捉蚤。 院中可真熱鬧抬驴,春花似錦、人聲如沸缆巧。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽陕悬。三九已至题暖,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間捉超,已是汗流浹背胧卤。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留狂秦,地道東北人灌侣。 一個月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓推捐,卻偏偏與公主長得像裂问,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子牛柒,可洞房花燭夜當晚...
    茶點故事閱讀 42,925評論 2 344

推薦閱讀更多精彩內(nèi)容