5

使用Raphael 2.0,我试图以相对于集合中所有对象的方式将变换应用于一组对象。但是,我得到的效果是变换单独应用于每个项目,而与集合中的其他对象无关。

例如: http: //jsfiddle.net/tim_iles/VCca9/8/ - 如果您现在取消对最后一行的注释并运行代码,每个圆圈都会缩放到 0.5 倍。我试图达到的实际效果是缩放整组圆圈,因此它们的相对距离也被缩放,这应该将它们全部放在白色正方形的边界框内。

有没有办法使用 Raphael 的内置工具来实现这一点?

4

1 回答 1

11

缩放时,第一个参数是 X 比例。如果您不提供其他参数,它将使用它作为 Y 比例,并围绕对象的中心进行缩放。

当您缩放矩形时,它会围绕矩形的中心进行缩放。如果您希望圆圈也围绕该点而不是它们的中心缩放,您应该提供该点。

所以最后一行可能是set.transform("s0.5,0.5,100,100");(100,100 是您缩放的矩形的中心)

至少,我认为这是你所要求的。

于 2012-04-11T00:35:18.840 回答