限制对象尺寸调整(Limit object resizing)

2019-10-29 05:45发布

我有我的画布两个对象。 中较小的一个是在较大的一个的顶部。 我想从调整较大的物体比小物体更小的尺寸停止用户。

为此,我勾搭成更大的物体缩放事件:

本实施例中只实现它的对象的左侧。

function stageIntersectsWithObject() {
    var stageLeft = el.getBoundingRect(true).left;
    var objLeft = rect1.getBoundingRect(true).left
    el.setCoords();
    if(stageLeft > objLeft){
        el.set('left', objLeft);
        el.set('scaleX', this.lastScaleX);
    } else {
        this.lastScaleX = el.scaleX;
    }
}

只要左侧满足更大的对象更改宽度为好。 我有行为限制了这项由节能scaleX值,但它仍然没有工作顺利进行。

请看看这个小提琴: http://jsfiddle.net/zc3ufbha/1/

点击黑色物体,直到它碰到小绿叶对象从左边改变它的大小,以正确的。 你会看到黑色的物体宽度在左侧停止变化。

我最好如何预防呢? 谢谢

文章来源: Limit object resizing