Was ich will?Generieren Sie einen zufälligen Koordinatenpfad in einem Raster
Ich möchte PHP eine Funktion oder Klasse/Verfahren, das ist ein Array eines siehe Pfad in einem Gitter (9x9) erzeugen (Code: Gitter mit Pfad). Dies sind die Bedingung:
- Die Überhöhung Block überlappende eachother
- Es gibt eine Richtung Pfad (siehe unter: Was tun hatte ich). Dieser Pfad kann zufällig sein und die Richtungen sind erforderlich.
- Es ist möglich, auf der rechten/oberen Seite zu verlassen und den Pfad auf der linken Seite/unten fortgesetzt (siehe Beispiel unten). Umgekehrt ist auch möglich.
- Die Anzahl der Schritte ist variabel und kann sich nicht überschneiden.
- Geben Sie ein Array zurück (Code: Gitter mit Pfad). Ich brauche die Koordinaten von den orangefarbenen Punkten im Bild unten. Tatsächlich sind die Koordinaten der Reihe nach in einem Array (von den orangefarbenen Dots) genug. Aber wenn es einfacher ist, das vollständige 9x9 Array Grid zu verwenden, ist es okay.
Was habe ich?
- Ein Array leeres Raster (Code: leeres Raster):
- A zufällige Startposition (siehe "Start" in Bild Beispiel)
- Eine Richtung, in diesem Fall 1.234.123 (kann sein abweichend) (1: up, 2: rechts, 3: unten, 4: links)
zusätzliche Informationen?
Wenn Sie zusätzliche Informationen benötigen oder etwas nicht klar ist? Bitte frage mich. Vielen Dank!
Code: leeres Raster:
array(
array(0, 0, 0, 0, 0, 0, 0, 0, 0),
array(0, 0, 0, 0, 0, 0, 0, 0, 0),
array(0, 0, 0, 0, 0, 0, 0, 0, 0),
array(0, 0, 0, 0, 0, 0, 0, 0, 0),
array(0, 0, 0, 0, 0, 0, 0, 0, 0),
array(0, 0, 0, 0, 0, 0, 0, 0, 0),
array(0, 0, 0, 0, 0, 0, 0, 0, 0),
array(0, 0, 0, 0, 0, 0, 0, 0, 0),
array(0, 0, 0, 0, 0, 0, 0, 0, 0),
)
Code: Gitter mit Pfad (1 = beginnen, 8 = Ende):
array(
array(0, 0, 0, 0, 0, 0, 0, 0, 0),
array(0, 0, 0, 0, 3, 0, 2, 0, 0),
array(0, 0, 0, 0, 0, 0, 0, 0, 0),
array(6, 0, 0, 7, 0, 0, 0, 0, 0),
array(0, 0, 0, 0, 0, 0, 0, 0, 0),
array(0, 0, 0, 0, 0, 0, 0, 0, 0),
array(0, 0, 0, 8, 0, 0, 1, 0, 0),
array(5, 0, 0, 0, 4, 0, 0, 0, 0),
array(0, 0, 0, 0, 0, 0, 0, 0, 0),
)
Ich bin froh, dass Sie sich etwas einfallen ließen! Hope meins hilft irgendwie :) – Wranorn