我有一个小工具可以绘制一个圆网格(代表孔),允许用户向这些圆添加文本和线条。现在我已经设置好了,所以如果用户点击任何孔,那么无论孔移动到哪里,Paper 对象上的所有其他元素都会移动。接下来我要实现的是将所有内容作为一个对象旋转的能力。我意识到要实现这一点,我需要知道所有对象的中心点,我可以很容易地得到它。
我想知道的是我是否应该在另一个对象上绘制所有内容。该对象将充当另一个 Paper 对象,但仅用于移动和旋转。对象上绘制的孔上的任何单击事件都将传递给父对象(即伪纸对象,绘制所有内容)。这可能吗?如果是这样,我将如何将所有内容绘制到一个矩形上?如果不是,实现它的最佳方式是什么?
最佳答案
您需要的是 Set .您创建它,将对象推送到它,然后将其视为一个完整的组,在您的情况下通过应用转换。
例子:
var elements = paper.set();
if (!view.text) {
view.text = App.R.text(0, 0, this.value);
view.text.attr({
'font-size': font_size,
});
elements.push(view.text);
}
elements.transform('something');
请注意,您还可以将事件绑定(bind)到整个集合。
关于javascript - Raphael JS 将一组图纸作为一个移动/旋转?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16322156/