[英]How to include dojox.gfx.SVG and dojox.gfx.VML in a custom Dojo build with cross-browser support?
[英]How to rotate dojox gfx shape at new position?
如何在新位置旋轉dojox gfx?
形狀是可移動的,必須在新位置旋轉和縮放。 為了演示,我使用了dojox gfx的Butterly Demo 。 在jsfiddle看到這個可移動蝴蝶的例子 。
如何在新位置和新中心旋轉和縮放形狀?
提前致謝,
mbecker
我分叉你的jsFiddle( http://jsfiddle.net/phusick/ta65D/ )並添加了兩個dijit/form/NumberSpinner
(translateX和translateY)實例,以通過修改的updateMatrix
函數移動蝴蝶:
var updateMatrix = function() {
var translateX = xSpinner.get("value");
var translateY = ySpinner.get("value");
var centerX = 210 + translateX;
var centerY = 170 + translateY;
if(g) {
g.setTransform([
m.rotategAt(rotation, centerX, centerY),
m.scaleAt(scaling, centerX, centerY),
m.translate(translateX, translateY)
]);
}
};
編輯:要添加鼠標DnD支持,請將以下代碼添加到上述代碼中:
var moveable = new Moveable(g); // require("dojox/gfx/Moveable")
moveable.onMoved = function(mover, shift) {
xSpinner.set("value", xSpinner.get("value") + shift.dx);
ySpinner.set("value", ySpinner.get("value") + shift.dy);
}
當然,你不必使用NumberSpinner
,但是因為我把它放在那里之前它給你一個很好的反饋,在幕后發生了什么。 在jsFiddle上看到它: http : //jsfiddle.net/phusick/ta65D/ 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.