2013-04-07 64 views
0

我試圖每次點擊鏈接時使用EaselJS調整畫布大小。我這樣做:setTransform階段方法,Easeljs

function resizeCanvas(){ 
    console.log("Resizing...") 
    stage.setTransform(0,0,1.5,1.5,1,1,1,1,1); 

    stage.update(); 
} 

但似乎它只調整一次。該文檔說setTransform返回一個DisplayObject:http://www.createjs.com/Docs/EaselJS/classes/Stage.html#method_setTransform

這是否意味着它返回一個舞臺對象,我應該登錄到我的舊階段變量?我怎樣才能正確調整它?

謝謝!

回答

1

setTransform()SETs的變換屬性爲給定值,它不add它的方式來進一步放大是保存在單獨的變量/對象的變換值和調用setTransform()與之前增加的。

但如果你只是想放大的舞臺,不希望保存的值separatly你可以這樣做:

function resizeCanvas() { 
    stage.scaleX *= 1.5; 
    stage.scaleY *= 1.5; 
    // but beware this is exponetial, maybe you want to use this linear method: 
    // stage.scaleX/Y += 0.5; 

    stage.update(); 
} 
1

許多顯示對象的方法返回「這」這樣的方法可以鏈接,像這樣:

container.addChild(new Bitmap(src).set({alpha:0.5}).setTransform(100,200));

+0

這很酷,但...也許有點凌亂? – Cod1ngFree 2013-04-07 23:16:16