Exemple #1
0
        public MatrycaFiguraPunkt Znajdz(Point P)
        {
            am = J.R.Aktualna_Matryca;
            MatrycaFiguraPunkt p = null;

            foreach (MatrycaFiguraPunkt O in kopiaR.lokalizacja_figur)
            {
                if (O.nr_matrycy == am)
                {
                    //jezeli to ten to biore figure
                    if (P.X <= O.p.x + O.figura.W)
                    {
                        if (P.X >= O.p.x)
                        {
                            if (P.Y < O.p.y + O.figura.H)
                            {
                                if (P.Y > O.p.y)
                                {
                                    p = O;
                                    J.wm.textBlock.Text = "Nazwa: " + p.figura.Nazwa + "   ID: " + p.figura.ID;
                                    break;
                                }
                            }
                        }
                    }
                }
            }
            return(p);
        }
Exemple #2
0
 private void Window_MouseLeftButtonDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
 {
     if (J.prz != null)
     {
         Cursor        = Cursors.Hand;
         czy_Przesuwać = true;
         p             = J.prz.Znajdz(e.GetPosition(canvas));
         // J.prz.Rusz(p, e.GetPosition(canvas));
         textBlock.Text = e.GetPosition(canvas).X + "";
     }
 }
Exemple #3
0
 private void Window_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
 {
     czy_Przesuwać = false;
     Cursor        = Cursors.Arrow;
     p             = null;
 }
Exemple #4
0
        public void Rusz(MatrycaFiguraPunkt p, Point P)
        {
            if (p != null && czyEdytowac)
            {
                bool czyMogeX = true;
                bool czyMogeY = true;

                double RX = 0, RY = 0;

                //RX = (P.X - ( p.p.x -P.X));
                //RY = (P.Y - ( p.p.y- P.Y ));

                RX = P.X;
                RY = P.Y;



                J.wm.textBlock.Text = "spr";
                foreach (MatrycaFiguraPunkt O in kopiaR.lokalizacja_figur)
                {
                    if (O != p && O.nr_matrycy == am)
                    {
                        if (RX < 0 || RX + p.figura.W > J.Matka.rozmiar_x)
                        {
                            czyMogeX            = false;
                            J.wm.textBlock.Text = "   nie można tu przesunąć X (" + RX + "," + RY + ")";
                        }
                        if (RY < 0 || RY + p.figura.H > J.Matka.rozmiar_y)
                        {
                            czyMogeY            = false;
                            J.wm.textBlock.Text = "   nie można tu przesunąć Y (" + RX + "," + RY + ")";
                        }
                        if (czyMogeX || czyMogeY)
                        {
                            if (RX < O.p.x + O.figura.W + rzaz)
                            {
                                if (RX + p.figura.W + rzaz > O.p.x)
                                {
                                    if (p.p.y < O.p.y + O.figura.H + rzaz)
                                    {
                                        if (p.p.y + p.figura.H + rzaz > O.p.y)
                                        {
                                            czyMogeX            = false;
                                            J.wm.textBlock.Text = "   nie można tu przesunąć X (" + RX + "," + RY + ")";
                                        }
                                    }
                                }
                            }
                            if (p.p.x < O.p.x + O.figura.W + rzaz)
                            {
                                if (p.p.x + p.figura.W + rzaz > O.p.x)
                                {
                                    if (RY < O.p.y + O.figura.H + rzaz)
                                    {
                                        if (RY + p.figura.H + rzaz > O.p.y)
                                        {
                                            czyMogeY            = false;
                                            J.wm.textBlock.Text = "   nie można tu przesunąć Y (" + RX + "," + RY + ")";
                                        }
                                    }
                                }
                            }
                        }
                    }
                }


                if (czyMogeX)
                {
                    p.p.x = (int)RX; J.wm.textBlock.Text += " przesunietoX";
                }
                if (czyMogeY)
                {
                    p.p.y = (int)RY; J.wm.textBlock.Text += " przesunietoY";
                }


                if (czyMogeX || czyMogeY)
                {
                    J.R.Rysuj(kopiaR);
                    J.wm.textBlock.Text = "Nazwa: " + p.figura.Nazwa + "   ID: " + p.figura.ID + "  " + P.X + " " + P.Y;
                }
            }
        }