Ejemplo n.º 1
0
        private void Change_ViewPort(MainWindow.ViewPort delta)
        {
            foreach (var shape in MainWindow.Shapes)
            {
                shape.StartPoint = new Point
                {
                    X = shape.StartPoint.X * delta.Scale + delta.X,
                    Y = shape.StartPoint.Y * delta.Scale + delta.Y
                };

                shape.EndPoint = new Point
                {
                    X = shape.EndPoint.X * delta.Scale + delta.X,
                    Y = shape.EndPoint.Y * delta.Scale + delta.Y
                };

                shape.Thickness *= delta.Scale;
            }
        }
Ejemplo n.º 2
0
        private void Right_Click(Point startPoint)
        {
            if (MainWindow.viewPort.Scale / 2 < 0.25)
            {
                return;
            }

            MainWindow.viewPort.Scale /= 2;

            var delta = new MainWindow.ViewPort
            {
                X     = startPoint.X - MainWindow.Canv.ActualWidth / 4,
                Y     = startPoint.Y - MainWindow.Canv.ActualHeight / 4,
                Scale = 0.5
            };

            delta.X = Math.Abs(delta.X);
            delta.Y = Math.Abs(delta.Y);

            Change_ViewPort(delta);
        }
Ejemplo n.º 3
0
        private void Left_Click(Point startPoint)
        {
            if (MainWindow.viewPort.Scale * 2 > 16)
            {
                return;
            }

            MainWindow.viewPort.Scale *= 2;

            var delta = new MainWindow.ViewPort
            {
                X     = startPoint.X - MainWindow.Canv.ActualWidth / 16,
                Y     = startPoint.Y - MainWindow.Canv.ActualHeight / 16,
                Scale = 2
            };

            delta.X = -Math.Abs(delta.X);
            delta.Y = -Math.Abs(delta.Y);

            Change_ViewPort(delta);
        }