這裏是我的腳本:拉斐爾2旋轉和平移
<script>
Raphael.fn.polyline = function(pointString) {
return this.path("M" + pointString);
};
window.onload = function() {
var paper = Raphael("holder", 500, 500);
paper.circle(100, 175, 70).attr({"stroke-width":10, "stroke":"red"});
var a = paper.polyline("92,102 96,91 104,91 108,102").attr({"fill":"green", "stroke-opacity":"0"}).rotate(25, 100, 175);
var b = paper.polyline("92,102 96,91 104,91 108,102").attr({"fill":"green", "stroke-opacity":"0"}).rotate(45, 100, 175);
var c = paper.polyline("92,102 96,91 104,91 108,102").attr({"fill":"green", "stroke-opacity":"0"}).rotate(65, 100, 175);
var group = paper.set();
group.push(a, b, c);
group.translate(60);
};
</script>
當我使用拉斐爾-1.5.2,其結果是:
當我使用拉斐爾2.0,結果是:
在1.5.2中它使用旋轉變換來旋轉圓周上的物體,在2.0中它使用矩陣變換。我假設矩陣變換會轉換該對象的座標系,所以當您稍後在xy方向上翻譯對象時,它會將其轉換爲與該對象相對的xy。
我需要能夠在紅色圓圈的邊緣周圍添加綠色物體,然後才能夠在同一方向上拖動和移動所有物體。我堅持使用1.5.2還是我只是想在2.0中如何改變翻譯?
[heres a jsfiddle showing the issue](http://jsfiddle.net/whAxR/)。隨着拉斐爾1.5.2,-X總是在左邊,而-Y總是在上面。隨着2.0 -X和-Y的變化取決於元素的旋轉。與2.0我沒有看到翻譯以前旋轉過的東西的好方法。 – Joe