Javascript 如何按组获取对象的角度、坐标和比例?
在fabricjs中,对象的左侧、顶部、角度、scaleX和scaleY在组中与在组中不同。当对象不在组中时,我可以基于画布获取右侧属性。但一旦该对象在组中,我获取的左侧、顶部或角度将基于组 如果我旋转一个组,组的角度会改变,但当我使用Javascript 如何按组获取对象的角度、坐标和比例?,javascript,canvas,fabricjs,Javascript,Canvas,Fabricjs,在fabricjs中,对象的左侧、顶部、角度、scaleX和scaleY在组中与在组中不同。当对象不在组中时,我可以基于画布获取右侧属性。但一旦该对象在组中,我获取的左侧、顶部或角度将基于组 如果我旋转一个组,组的角度会改变,但当我使用group.\u objects[I].angle获取对象的角度时,角度不会改变 这个问题解决了左上角的问题,但是如何按组获得角度和比例呢? 谢谢你的阅读 最近,fabricjs对集团转型管理进行了全面检查。 使用最新版本并尝试以下操作: //object is
group.\u objects[I].angle
获取对象的角度时,角度不会改变
这个问题解决了左上角的问题,但是如何按组获得角度和比例呢?
谢谢你的阅读 最近,fabricjs对集团转型管理进行了全面检查。 使用最新版本并尝试以下操作:
//object is your desired object inside the group.
var matrix = object.calcTransformMatrix(),
options = fabric.util.qrDecompose(matrix);
//options will be an object with following properties.
/*
options.translateX //left position
options.translateY //top position
options.scaleX
options.scaleY
options.skewX
options.skewY
options.angle // angle in degrees.
*/
此代码取自fabric.Group类中的函数
realizeTransform
。最近fabricjs对组转换管理进行了彻底的改进。
使用最新版本并尝试以下操作:
//object is your desired object inside the group.
var matrix = object.calcTransformMatrix(),
options = fabric.util.qrDecompose(matrix);
//options will be an object with following properties.
/*
options.translateX //left position
options.translateY //top position
options.scaleX
options.scaleY
options.skewX
options.skewY
options.angle // angle in degrees.
*/
此代码取自fabric.Group类中的函数
realizeTransform
。非常感谢,但是如果我想要正确的结果,我必须将对象的originX和originY设置为“center”。这是小提琴:。我不知道为什么几何体的originX或Y的默认值是“left”和“top”。但是路径或组是“center”?为什么不将它们的默认值全部设置为“center”?非常感谢,但是如果我想要正确的结果,我必须将对象的originX和originY设置为“center”。这是小提琴:。我不知道为什么几何体的默认值originX或Y是'left'和'top'。但是路径或组是'center'?为什么不让它们的默认值都是'center'?