Ich habe ein Problem mit den folgenden Spiel-Maps:Connect Side-by-Side-Rects zu einem großen Rect
Ich mag die ganze Fläche in einem Array (in der Nähe von gelb) speichern, so dass der Computer später weiß, ob ein Klick durch den Benutzer auf dem Wasser ist (x/y-Koordinate des Mauszeigers nicht in dem Array) oder in dem Land (x/y koordiniert den Cursor nicht in dem Array). Ich habe bereits gemacht (Grund visuelle Darstellung): Wie zu sehen ist, wird die Fläche mit gleich großen Rechtecke bedeckt, die gespeichert werden wie folgt in der Reihe:
{x:upper left corner - X-postion, y: upper left corner - Ypostion, x1:width of the rect, y1: height of the rect}
example: {x:0, y:0, x1:3, y2: 2}
Diese obejcts alle gespeicherten in einer großen Reihe. Es dauert jedoch zu lange, um zu bestimmen, ob ein Punkt in der Anordnung (Landfläche) oder nicht in der Anordnung (Wasserfläche) ist. (Dauert 45 Millisekunden) Ich möchte nun diese kleinen einzelnen Rechtecke zusammenführen, also größere Rechtecke bilden, die schneller mit der Mausposition verglichen werden können. Wie dieses handgemachte Beispiel: Wenn es möglich ist, sollten diese kleinen Rechteck-Objekte zu einem großen Rect (wie dem grünen oder braunen) hinzugefügt werden. Bis ich noch nichts finden konnte, damit ich hoffe du kannst mir helfen. Es gibt ein weiteres Problem: Das Array, in dem ich alle kleinen Recs gespeichert habe, ist sehr groß (über 100.000 Elemente). Sie alle sind wie folgt gespeichert:
[{x:0, y: 0, x1:3, y1:2},{x:0, y: 2, x1:3, y1:2},{x:0, y: 4, x1:3, y1:2}]
Es ist kein Problem, wenn eine Lösung mehr als 10 Minuten oder so etwas dauert.
Sie fragen nach einer Bitrate rot Algorithmus (Codierung). Das kann auf viele Arten gemacht werden, einschließlich des handgemachten, genau wie Sie begonnen haben und es ist immer noch legal, da Sie es nur einmal tun werden und wahrscheinlich viel kürzer dauern werden, als den besten Algorithmus zu denken und zu implementieren. – Redu
Ich denke, Sie können Bildverarbeitung Basisfarbe –
@Naresh Teli Ich habe Bildverarbeitung basierend auf den Farben, um die rot markierten Rechtecke zu bekommen. Oder was meinst du? –