Steuerelemnte: "Kollisionsprüfung"



  • Guten Tag!

    Folgendes Problem: Ich habe ein Panel in dem ein Array von Button liegt. Jeder Button hat ein Image. Ich möchte nämlich ein Sliding Puzzle realisieren. Verschieben und dergleichen funktioniert alles schon.
    Jedoch kann ich noch mit den Puzzleteilen (Button) zur Hälfte in ein anderes fahren und zur Häflte über den Panelrand hinaus.

    if (z == blankBlock.zeile)
                {
                    //Console.WriteLine("Aus");
                    b.Left = b.Left + (eX - tempX);
                }
                else
                {
                    b.Top = b.Top + (eY - tempY);
                }
    
            }
    

    Hat jemand eine Idee zur Berechnung dieser Grenzen, die nicht überschritten werden dürfen?



  • Ist eX die Breite des Buttons? Dann solltest du mit linker Kante + breite des Buttons die Rechte Kante feststellen können und somit auch überprüfen können ob sich der Button mit einem anderen überschneidet. Was ist tempX?



  • Vielen Dank! Problem hat sich jetzt erübrigt. eX ist die aktuelle Mauskoordinate und tempX ist immer die vorhergehende.

    Sollte vielleicht noch erwähnen, dass die Steuerung mittels Kinect-gesteuerten Cursor erfolgt und die Buttons somit verschoben werden können, dadurch die Berechnung mit den Maus - Koordinaten.


Anmelden zum Antworten