ich hab in einer ObjectList 200 Objekte vom Typ Feld. Dieser Felder sind Hexagonalfelder auf einem Bitmap
Zur späteren besseren Verwendung (Nachbarfeldermittlung, Wegfindung) muss im Object Feld dessen Position in der Karte gespeichert werden. Ich benötige dazu Spalte (X Wert) und Zeile (Y Wert).
Der unten aufgeführte Code liefert mir bis jetzt das passende Endergebnis. Mein Problem ist, wie ich jeweils den Index in der ObjectList um eins erhöhe und die Werte dann zu schreiben.
Code: Alles auswählen
Feld := Felderliste.Items[i] as TFeld; // liste hat 200 Items
ZaehlerAnzReihen:=0;
Repeat // /Spalte oder auch Reihe
ZaehlerAnzFeldReihe:=0;
Repeat //Innerer Zähler für die Zeilenwert
inc(ZaehlerAnzFeldReihe);
//Feld.MapPos.x:=ZaehlerAnzReihen; ----------------------------->hier fehlt der jeweilige Index
//Feld.MapPos.y:=ZaehlerAnzFeldReihe;----------------------------->hier fehlt der jeweilige Index
until ZaehlerAnzFeldReihe = AnzFeldReihe ; // im Testfall 8
Inc(ZaehlerAnzReihen);//Reihe erhöhen
until ZaehlerAnzReihen = AnzReihen; // im Testfall 25