unit mKugel; interface uses mSuM; type Kugel = class hatStift: Stift; // die Kugel hat einen Stift, um sich zu zeichnen constructor init; procedure Zeichne; procedure Loesche; procedure Bewege; destructor gibFrei; end; implementation constructor Kugel.init; begin hatStift := Stift.init; // Stift erzeugen hatStift.bewegeBis(20,50); end; procedure Kugel.Zeichne; begin hatStift.zeichneKreis(5); end; procedure Kugel.loesche; begin hatStift.radiere; self.Zeichne; hatStift.normal end; procedure Kugel.Bewege; begin self.loesche; hatStift.bewegeUm(0.1); // an die Geschwindigkeit des Rechners anpassen! self.Zeichne; end; destructor Kugel.gibFrei; begin hatStift.gibFrei; // Stift wieder freigeben end; end.