Javascript 通过控件旋转组后,获取fabricjs中组中对象相对于画布的位置

Javascript 通过控件旋转组后,获取fabricjs中组中对象相对于画布的位置,javascript,canvas,fabricjs,Javascript,Canvas,Fabricjs,我已经从SO post中找到了如何获得坐标。我设法做了一些实验,以便在团队规模扩大时获得坐标 x=object.left*object.group.scaleX+object.group.left+(object.group.width/2)*object.group.scaleX y=object.top*object.group.scaleY+object.group.top+(object.group.height/2)*object.group.scaleY 如何在组也旋转时获得x&y。

我已经从SO post中找到了如何获得坐标。我设法做了一些实验,以便在团队规模扩大时获得坐标

x=object.left*object.group.scaleX+object.group.left+(object.group.width/2)*object.group.scaleX

y=object.top*object.group.scaleY+object.group.top+(object.group.height/2)*object.group.scaleY


如何在组也旋转时获得x&y。我遇到了fabric.util.rotatePoint,但不知道如何使用它。我希望有一个函数可以返回一个对象相对于画布的坐标,考虑到原点、原点、缩放、旋转等的位置。请提供帮助。感谢阅读。

我通过跟踪缩放和使用变换矩阵解决了这个问题

var matrix = object.calcTransformMatrix();
x = matrix[4] // translation in X
y = matrix[5] // translation in Y

矩阵的第5和第6个值根据定义是平移,但它也考虑了组内对象的旋转和缩放。我想找到物体的位置是在两个物体之间画一条线。我想在用户调整画布大小后再做

你说的bux和y是什么意思?顶部和左侧?调查顶部和左侧。你可以将平移、缩放、旋转等变换应用到矩阵中,然后使用矩阵获得画布的相对点。AndreaBogazzi:是的。markE,谢谢你会查出来的。