我从SO帖子中弄清楚了如何获取组中对象的画布相对位置?如何获取坐标。我设法进行了一些实验,以在扩大小组人数时获得坐标。
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,但是真的不知道如何使用它。我希望有一个函数可以考虑到originX,originY,缩放,旋转等位置,返回对象相对于画布的坐标。请提供帮助。谢谢阅读。
我通过跟踪缩放比例并使用转换矩阵来解决了这个问题。
var matrix = object.calcTransformMatrix();
x = matrix[4] // translation in X
y = matrix[5] // translation in Y
矩阵的第5个值和第6个值按定义是平移的,但它也考虑了旋转,缩放组中对象的比例。我想要找到对象的位置的目的是在两个对象之间画一条线。我也想在用户调整画布大小之后执行此操作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句