【发布时间】:2021-10-12 20:06:09
【问题描述】:
我有一个使用 konvajs 的应用程序,我将矩形设置为可调整大小。我将其设置为在转换矩形后将 scaleX 和 scaleY 设置为 1,这样我就可以使用 x、y、宽度和高度。我使用以下代码执行此操作:
myRectangle.on('transformend', function() {
myRectangle.width(Math.round(myRectangle.width() * myRectangle.scaleX()));
myRectangle.height(Math.round(myRectangle.height() * myRectangle.scaleY()));
myRectangle.scaleX(1);
myRectangle.scaleY(1);
});
但是,有时在我调整大小后(通常如果我通过向上或向左拖动来“翻转”矩形),x、y、宽度和高度是奇怪的值。有时宽度或高度是负数,有时 x 和 y 位置似乎不是指矩形的左上角。我希望能够提取有关矩形的信息,因此我希望位置位于矩形的左上角,具有正的宽度和高度值。我不介意在转换矩形后重置这些值,但我不太确定 konvajs 是如何计算 x、y、宽度和高度的,所以我无法正确重置它们。是否有一些指标表明转换何时“翻转”矩形?或者其他方式来重置它?
【问题讨论】:
标签: konvajs