public void Update() { if (IsMoving) { Rectangle rect = CurrentArea; rect.X += InputManager.MouseVelocity.X; rect.Y += InputManager.MouseVelocity.Y; CurrentArea = rect; } if (IsCreating && !CurrentArea.IsEmpty) { currentPosition = InputManager.MousePosition0Based; Point newPosition = currentPosition; if (proportionalResizing) { newPosition = CaptureHelpers.ProportionalPosition(positionOnClick, currentPosition); } CurrentArea = CaptureHelpers.CreateRectangle(positionOnClick, newPosition); } CheckHover(); ResizeManager.Update(); }
public void Update() { BaseShape shape = CurrentShape; if (shape != null) { if (IsMoving) { ResizeManager.MoveCurrentArea(InputManager.MouseVelocity.X, InputManager.MouseVelocity.Y); } else if (IsCreating && !CurrentRectangle.IsEmpty) { CurrentPosition = InputManager.MousePosition0Based; Point newPosition = CurrentPosition; if (IsProportionalResizing) { newPosition = CaptureHelpers.ProportionalPosition(PositionOnClick, CurrentPosition); } if (IsSnapResizing) { newPosition = SnapPosition(PositionOnClick, newPosition); } shape.EndPosition = newPosition; } } CheckHover(); ResizeManager.Update(); }
public void Update() { BaseShape shape = CurrentShape; if (shape != null) { if (IsMoving) { ResizeManager.MoveCurrentArea(InputManager.MouseVelocity.X, InputManager.MouseVelocity.Y); } else if (IsCreating && !CurrentRectangle.IsEmpty) { Point currentPosition = InputManager.MousePosition0Based; if (IsProportionalResizing) { if (shape.NodeType == NodeType.Rectangle) { currentPosition = CaptureHelpers.SnapPositionToDegree(shape.StartPosition, currentPosition, 90, 45); } else if (shape.NodeType == NodeType.Line) { currentPosition = CaptureHelpers.SnapPositionToDegree(shape.StartPosition, currentPosition, 45, 0); } } else if (IsCornerMoving) { shape.StartPosition = shape.StartPosition.Add(InputManager.MouseVelocity.X, InputManager.MouseVelocity.Y); } else if (IsSnapResizing) { currentPosition = SnapPosition(shape.StartPosition, currentPosition); } shape.EndPosition = currentPosition; } } CheckHover(); ResizeManager.Update(); }