代码之家  ›  专栏  ›  技术社区  ›  Rob

将鼠标X、鼠标Y值转换为0,0的公式

  •  0
  • Rob  · 技术社区  · 1 周前

    我在舞台上有各种各样的物体,它们的把手放在每个物体的边界周围。我想像在Photoshop中调整大小时一样,通过按下并拖动手柄来调整对象的大小。我设想通过按下手柄,将鼠标x,鼠标y坐标重置为0,0,当拖动手柄时,鼠标x,y值会增加或减少。我想使用这个值并将其添加到对象的宽度或高度中。例如:鼠标移动2px,输出的值为2px,依此类推。

    Object.height+=//按下鼠标时从0开始的Y方程

    2 回复  |  直到 1 周前
        1
  •  0
  •   Ammar    1 周前

    你可以存储 MouseX MouseY 在变量中,当鼠标按钮按下并且光标位于处理程序上时,从新的对应变量中减去它们 鼠标X 鼠标Y 当鼠标按钮向上时。

    现在,您可以将这些值添加到对象的高度和宽度中。

        2
  •  0
  •   Rob    1 周前

    谢谢,这需要一些调整。

    var StartPointY = stage.mouseY;
    var StartHeight = SelectedRoom.height;
            stage.addEventListener(MouseEvent.MOUSE_MOVE, TransformShape);
            function TransformShape(e: Event): void {
                if (TransformMode == "Height") {
                    SelectedRoom.height = StartHeight + Math.round(StartPointY - stage.mouseY) * 2;
                }
    }