Ejemplo n.º 1
0
        private void SurfaceTexture_MouseMove(object sender, MouseEventArgs e)
        {
            SPosition new_location = e.Location;

            new_location.X += SurfaceTexture.GetOffset().X *KScrollDelta;
            new_location.Y += SurfaceTexture.GetOffset().Y *KScrollDelta;
            new_location.X  = Math.Max(new_location.X, 0);
            new_location.Y  = Math.Max(new_location.Y, 0);

            TextureMousePosition = new_location;

            LabelMousePos.Text = "마우스 좌표 (" +
                                 TextureMousePosition.X.ToString() + ", " + TextureMousePosition.Y.ToString() + ")";

            LabelDistance.Text = "거리 (" +
                                 Math.Abs(TextureMousePosition.X - TextureMousePositionFixed.X).ToString() + ", " +
                                 Math.Abs(TextureMousePosition.Y - TextureMousePositionFixed.Y).ToString() + ")";

            SurfaceTexture.CurrentMousePosition = e.Location;

            if (e.Button == MouseButtons.Left)
            {
                Rectangle selection = new Rectangle
                                      (
                    Math.Min(TextureMousePosition.X, TextureMousePositionFixed.X),
                    Math.Min(TextureMousePosition.Y, TextureMousePositionFixed.Y),
                    Math.Abs(TextureMousePosition.X - TextureMousePositionFixed.X),
                    Math.Abs(TextureMousePosition.Y - TextureMousePositionFixed.Y)
                                      );

                SurfaceTexture.SetSelection(selection);

                LabelSelection.Text = "선택 - 위치(" +
                                      selection.X.ToString() + ", " + selection.Y.ToString() + ") - 크기(" +
                                      selection.Width.ToString() + ", " + selection.Height.ToString() + ")";
            }

            SurfaceTexture.Invalidate();
        }
Ejemplo n.º 2
0
        private void SurfaceTexture_MouseDown(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                SurfaceTexture.ShouldDrawFixedGuideline = true;

                SPosition new_location = e.Location;
                new_location.X += SurfaceTexture.GetOffset().X *KScrollDelta;
                new_location.Y += SurfaceTexture.GetOffset().Y *KScrollDelta;

                TextureMousePositionFixed = SurfaceTexture.FixedMousePosition = new_location;

                LabelMousePosFixed.Text = "고정 좌표 (" +
                                          TextureMousePositionFixed.X.ToString() + ", " + TextureMousePositionFixed.Y.ToString() + ")";

                SurfaceTexture.Invalidate();
            }
            else if (e.Button == MouseButtons.Right)
            {
                SurfaceTexture.SetSelection(new Rectangle(0, 0, 0, 0));

                LabelSelection.Text = "선택 - 위치(0, 0) - 크기(0, 0)";
            }
        }