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]; } //-------------------------------------------------------------------------------------------------- }