我在raphael文档中看到,翻译是折旧的,建议使用转换。但我的要求是当我移动一个对象时我需要x,y或cx,cy需要更新到具有最新值的服务器。这可以使用翻译轻松完成。但如果我使用变换,它会存储为Tx,y
。如何在使用transform时获取修改后的x和y?
示例
console.dir(page1);
var c1 = paper.circle(50,50,3);
c1.transform("T100,100");
这里cx和cy仍然是50,50,但我需要的值为100,100
答案 0 :(得分:0)
transform()将改变坐标系。如果您只需要“移动”一个形状,那么您可以根据形状改变其位置属性cx,cy,x,y。以下是一个raphael扩展,它将方法nt_translate()和nt_scale()添加到形状和集合中,并将两个自定义属性translateNT和scaleNT添加到形状。因此,如果你执行aCircle.nt_translate(10,10),圆圈的cx和cy属性将会改变,并且它将在没有transform()的情况下被翻译。希望有所帮助!