Class Person

java.lang.Object
  extended by Person
All Implemented Interfaces:
Eintrag

public abstract class Person
extends java.lang.Object
implements Eintrag

Piktogramm einer Person als abstrakte Klasse.

Version:
2012-12-07
Author:
Bernd Gramlich

Field Summary
protected  Vieleck hand1
           
protected  Vieleck hand2
           
protected  Kreissektor haupthaar
           
protected  Vieleck hose
           
protected  Vieleck jacket
           
protected  Ellipse kopf
           
protected  Vieleck kragen
           
protected  Vieleck langhaar
           
protected  java.lang.String name
           
protected  Beschriftung namensschild
           
protected  Vieleck rock
           
protected  Vieleck schuh1
           
protected  Vieleck schuh2
           
 
Fields inherited from interface Eintrag
xVerschiebung, yVerschiebung
 
Constructor Summary
Person(int a, int x, int y, java.lang.String personenname, java.lang.String hautfarbe, java.lang.String haarfarbe, java.lang.String schuhfarbe, java.lang.String kleiderfarbe1, java.lang.String kleiderfarbe2, java.lang.String kleiderfarbe3)
          Konstruktor.
 
Method Summary
 void druckeAufKonsole()
          Drucke eine Beschreibung der Person auf die Konsole.
static Person erzeugeZufaellig()
          Erzeuge eine zufällige Person der Strichstärke 3 und zeichne sie in der linken oberen Leinwandecke.
 void faerbeHaare(java.lang.String neueFarbe)
          Färbe die Haare in der gewünschten Farbe.
 java.lang.String gibHaarfarbe()
          Nenne die Haarfarbe.
 java.lang.String gibKleiderfarbe1()
          Nenne die erste Kleiderfarbe.
 java.lang.String gibKleiderfarbe2()
          Nenne die zweite Kleiderfarbe.
 java.lang.String gibKleiderfarbe3()
          Nenne die dritte Kleiderfarbe.
 java.lang.String gibName()
          Nenne den Namen des Piktogramms.
 int gibNamenslaenge()
          Gib die Länge des Namens.
 boolean istBeliebig()
          Bestätige, dass das Piktogramm beliebig ist.
 boolean istBlondine()
          Gib an, ob dieses Piktogramm eine Blondine darstellt.
 boolean istKleinerAls(Eintrag andererEintrag)
          Gib an, ob diese Person kleiner als ein anderer Eintrag ist.
 boolean istMaennlich()
          Gib an, ob dieses Piktogramm männlich ist.
abstract  boolean istWeiblich()
          Gib an, ob dieses Piktogramm weiblich ist.
 void macheSichtbar()
          Mache das Piktogramm sichtbar.
 void macheUnsichtbar()
          Mache das Piktogramm sichtbar.
 void schwebe()
          Schwebe um 10 Bildpunkte nach oben.
 void setzeJacketfarbe(java.lang.String neueFarbe)
          Färbe das Jacket in der gewünschten Farbe.
 void setzeKleiderfarben(java.lang.String neueFarbe1, java.lang.String neueFarbe2, java.lang.String neueFarbe3)
          Setze die Kleiderfarben.
 void setzeName(java.lang.String neuerName)
          Ändere den Namen des Piktogramms.
 void sinke()
          Sinke um 10 Bildpunkte nach unten.
 void verschiebe(int dx, int dy)
          Verschiebe die Person um den Vektor (dx|dy).
 void verschiebeNachLinks()
          Verschiebe die Person um eine Stelle nach links in der Liste.
 void verschiebeNachRechts()
          Verschiebe die Person um eine Stelle nach rechts in der Liste.
protected  java.lang.String zentriere(java.lang.String name)
          Zentriere den Namen in einer Zeichenkette von 28 Zeichen.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

hand1

protected Vieleck hand1

hand2

protected Vieleck hand2

haupthaar

protected Kreissektor haupthaar

hose

protected Vieleck hose

jacket

protected Vieleck jacket

kopf

protected Ellipse kopf

kragen

protected Vieleck kragen

langhaar

protected Vieleck langhaar

name

protected java.lang.String name

namensschild

protected Beschriftung namensschild

rock

protected Vieleck rock

schuh1

protected Vieleck schuh1

schuh2

protected Vieleck schuh2
Constructor Detail

Person

public Person(int a,
              int x,
              int y,
              java.lang.String personenname,
              java.lang.String hautfarbe,
              java.lang.String haarfarbe,
              java.lang.String schuhfarbe,
              java.lang.String kleiderfarbe1,
              java.lang.String kleiderfarbe2,
              java.lang.String kleiderfarbe3)
Konstruktor. Erzeuge ein Piktogramm der Strichstärke a an der Position (x|y) mit den gewünschten Farben.

Method Detail

druckeAufKonsole

public void druckeAufKonsole()
Drucke eine Beschreibung der Person auf die Konsole.

Specified by:
druckeAufKonsole in interface Eintrag

erzeugeZufaellig

public static Person erzeugeZufaellig()
Erzeuge eine zufällige Person der Strichstärke 3 und zeichne sie in der linken oberen Leinwandecke.


faerbeHaare

public void faerbeHaare(java.lang.String neueFarbe)
Färbe die Haare in der gewünschten Farbe.


gibHaarfarbe

public java.lang.String gibHaarfarbe()
Nenne die Haarfarbe.


gibKleiderfarbe1

public java.lang.String gibKleiderfarbe1()
Nenne die erste Kleiderfarbe.


gibKleiderfarbe2

public java.lang.String gibKleiderfarbe2()
Nenne die zweite Kleiderfarbe.


gibKleiderfarbe3

public java.lang.String gibKleiderfarbe3()
Nenne die dritte Kleiderfarbe.


gibName

public java.lang.String gibName()
Nenne den Namen des Piktogramms.


gibNamenslaenge

public int gibNamenslaenge()
Gib die Länge des Namens.


istBeliebig

public boolean istBeliebig()
Bestätige, dass das Piktogramm beliebig ist.


istBlondine

public boolean istBlondine()
Gib an, ob dieses Piktogramm eine Blondine darstellt.


istKleinerAls

public boolean istKleinerAls(Eintrag andererEintrag)
Gib an, ob diese Person kleiner als ein anderer Eintrag ist. Entscheide also, ob ihr Name alphabetisch vor dem Namen des anderen Eintrags kommt.

Specified by:
istKleinerAls in interface Eintrag
Returns:
true, falls die Person alphabetisch vor "andererEintrag" kommt. false, falls die Person alphabetisch an derselben Stelle oder hinter "andererEintrag" kommt oder falls "andererEintrag" keine Person ist.

istMaennlich

public boolean istMaennlich()
Gib an, ob dieses Piktogramm männlich ist.


istWeiblich

public abstract boolean istWeiblich()
Gib an, ob dieses Piktogramm weiblich ist.


macheSichtbar

public void macheSichtbar()
Mache das Piktogramm sichtbar.


macheUnsichtbar

public void macheUnsichtbar()
Mache das Piktogramm sichtbar.

Specified by:
macheUnsichtbar in interface Eintrag

schwebe

public void schwebe()
Schwebe um 10 Bildpunkte nach oben.


setzeJacketfarbe

public void setzeJacketfarbe(java.lang.String neueFarbe)
Färbe das Jacket in der gewünschten Farbe.


setzeKleiderfarben

public void setzeKleiderfarben(java.lang.String neueFarbe1,
                               java.lang.String neueFarbe2,
                               java.lang.String neueFarbe3)
Setze die Kleiderfarben.


setzeName

public void setzeName(java.lang.String neuerName)
Ändere den Namen des Piktogramms.


sinke

public void sinke()
Sinke um 10 Bildpunkte nach unten.


verschiebe

public void verschiebe(int dx,
                       int dy)
Verschiebe die Person um den Vektor (dx|dy).


verschiebeNachLinks

public void verschiebeNachLinks()
Verschiebe die Person um eine Stelle nach links in der Liste.

Specified by:
verschiebeNachLinks in interface Eintrag

verschiebeNachRechts

public void verschiebeNachRechts()
Verschiebe die Person um eine Stelle nach rechts in der Liste.

Specified by:
verschiebeNachRechts in interface Eintrag

zentriere

protected java.lang.String zentriere(java.lang.String name)
Zentriere den Namen in einer Zeichenkette von 28 Zeichen. Liefert nur für kurze Name einigermaßen sinnvolle Ergebnisse. Besser wäre, wenn die Klasse Beschriftung die Möglichkeit zur exakt zentrierten Ausgabe hätte.