我正在做縮放工具,並遇到Sprite.setAttributes({scale:{...})的問題; 以畫布中心爲中心...Ext.draw.Sprite scale glitch
http://teempla.com/sites/all/themes/teamplan/d2d/ - 這就是它。
嘗試用鉛筆畫兩條或多條線,然後按Zoom +,您會看到有浮動。這是不對的。奇怪的是,他們把相對中心定位了。
PICE的點擊事件代碼:
click: function(e, t, eOpts){
d2dModel.set('zoom',d2dModel.get('zoom')+0.1);
var draw = Ext.ComponentManager.get(Ext.select('.d2d-draw-panel',true).elements[0].id);
for (var i in draw.surface.items.map){
draw.surface.items.map[i].setAttributes({
scale: {
cx: d2dModel.get('width')/2,
cy: d2dModel.get('height')/2,
x: d2dModel.get('zoom'),
y: d2dModel.get('zoom')
}
}, true);
}
}
在Raphael.JS我
el.transform('s'+zoom+','+zoom+','+w/2+','+h/2);
做它,它工作正常。
感謝您的任何意見!
當我按下縮放按鈕時,你並沒有真的縮小,你只是讓精靈變大(正如你所說的)。您應該縮放畫布。我過去曾經這樣做過。讓我看看你的代碼。 –