Rasterungsalgorithmen - sehr Dringend

Kai_Jack

Erfahrenes Mitglied
Hi Leute,

kennt jemand eine Klasse die folgendes macht:

In ein Polygon so viele wie möglich quadratische Zellen erzeugen und dabei innerhalb des Randes des Polygons bleiben. Wenn also am Rand eine Zelle über den Rand hinaus gehen würde, so soll sie nicht gezeichnet werden


bitte helft

Gruß Jack
 
Das ist ansich ja nicht schwer zu erstellen:

1. Du hast den Rand deines Polygones.
2. Definition der Seitenlänge deines Quadrates.
3. Und los gehts. Geht sich das Quadrat an der entsprechenden Stelle aus? Ja, zeichnen, nein? Verwerfen.

Komplizierter wird es dann, wenn du eine möglichst platzsparende Anordnung möchtest.
 
Ich kapier das jetzt gar nicht, ich meine für dich scheint es wirklich einfach zu sein, aber welche Methoden nutze ich denn da Ich habe ein beliebiges Polygon, also kein Quadrat, es sollen nur Quadrate drin sein.



Gruß Jack :p
 
So, anbei ein kleines Beispiel wie das gehen könnte. Ist jedoch nicht ganz sauber ausprogrammiert, aber damit solltest schon was anfangen können. Speed ist halt nicht besonders und die Methode CreateRectangles sollte bezgl. der Koordinaten noch schöner implementiert werden.

Wenn du es anders brauchst, sprich á la Landschaften etc. dann solltest zum Thema Polygon Triangulation nachschlagen.
 

Anhänge

  • PolyTest.zip
    26,3 KB · Aufrufe: 24
Nun, hab doch noch ein paar Änderungen vorgenommen. Arbeitet jetzt schneller. Benötigt nur noch ein Drittel der Zeit.
 

Anhänge

  • PolyTest.zip
    28,1 KB · Aufrufe: 25
Ich Danke dir sehr, so viel Hilfe hätte ich far nicht erwartet, aber es hilft mir unendlich weiter.




Gruß Jack
 
Wenn ichs doch sage, allerdings wird es dauern bis ich es korrekt verwenden kann, da ich das Polygon etwas komplizierter erzeuge.


Gruß und Danke nochmals


Jack :)
 

Neue Beiträge

Zurück