Sun*_*hew 3 javascript canvas fabricjs
我已经从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,但并不真正知道如何使用它。我希望有一个函数可以返回对象相对于画布的坐标,同时考虑到原点X、原点Y、缩放、旋转等。请帮忙。谢谢阅读。
我通过跟踪缩放和使用变换矩阵解决了这个问题。
var matrix = object.calcTransformMatrix();
x = matrix[4] // translation in X
y = matrix[5] // translation in Y
Run Code Online (Sandbox Code Playgroud)
根据定义,矩阵的第五个和第六个值是平移,但它也考虑了组内对象的旋转和缩放。我寻找物体位置的目的是在两个物体之间画一条线。我也想在用户调整画布大小后执行此操作。
| 归档时间: |
|
| 查看次数: |
4066 次 |
| 最近记录: |