class Feld
{
//--------------------------------------------------------------------------------------------------
// Variabeln
//--------------------------------------------------------------------------------------------------
int FeldSpalte, FeldZeile; // Spalten- bzw Zeilennummer des Feldes
int FeldIndex; // Feldnummer
// das Array "beeinflussendeZelle" enthŠlt die Indizes der Zellen mit Mittelpunkt im Feld selber
// oder in einem der acht benachbarten Feldern (dient der effizienteren BerŸhrungsabfrage)
int [] beeinflussendeZelle = new int [AnzahlZellen];
int AnzEinflusszellen; // Anzahl eingeschriebene Zellen im Array
//--------------------------------------------------------------------------------------------------
// Konstruktoren
//--------------------------------------------------------------------------------------------------
Feld (int s, int z) // Parameter: Zeilen und Spaltennummer
{
FeldSpalte = s;
FeldZeile = z;
FeldIndex = FeldZeile * AnzSpalten + FeldSpalte;
AnzEinflusszellen = 0;
}
//--------------------------------------------------------------------------------------------------
// Methoden
//--------------------------------------------------------------------------------------------------
// schreibt den Ÿbergebenen Index in die nŠchste freie Stelle des Arrays
void ZelleEinschreiben (int ZelleIndex)
{
beeinflussendeZelle [AnzEinflusszellen] = ZelleIndex;
AnzEinflusszellen++;
}
//--------------------------------------------------------------------------------------------------
// gibt die Anzahl Zellen im Array zurŸck
int getAnzEinflusszellen ()
{
return AnzEinflusszellen;
}
//--------------------------------------------------------------------------------------------------
// gibt den Index der Zelle an der abgefragten Stelle im Array zurŸck
int getBeeinflussendeZelle (int ArrayIndex)
{
return beeinflussendeZelle [ArrayIndex];
}
//--------------------------------------------------------------------------------------------------
}