Insgesamt ergibt sich folgendende Methode, die Sie auch aus der Anpassung der eigenen Lösung der Aufgabe 2 aus Kapitel 6 erhalten könnten:
private void KircheZeichnen(int xPos, int yPos)
{
int iTurmbreite;
int iTurmhöhe;
int iTurmDachhöhe;
int iTurmMitte;
int iSchiffbreite;
int iSchiffhöhe;
int iSchiffdachhöhe;
int iSchiffdachlänge;
int iTürbreite;
int iTürhöhe;
iTurmbreite = 50;
iTurmhöhe = 7*(int)(iTurmbreite/3);
iTurmDachhöhe = 2*(int)(Turmbreite/5);
iTurmMitte = (int)(iTurmbreite/2);
iSchiffbreite = 5*(int)(iTurmbreite/2);
iSchiffhöhe = (int)(iTurmhöhe/2);
iSchiffdachhöhe = (int)(iSchiffhöhe/3);
iSchiffdachlänge = 4*(int)(iSchiffbreite/5);
iTürbreite = 8;
iTürhöhe = 4*iTürbreite;
// Turm zeichnen
grGrafik.drawRect(xPos,yPos,iTurmbreite,iTurmhöhe);
// Turmdach zeichnen
grGrafik.drawLine(xPos,yPos,xPos+iTurmMitte,yPos-iTurmDachhöhe);
grGrafik.drawLine(xPos+iTurmMitte,yPos-iTurmDachhöhe,xPos+iTurmbreite,yPos);
// Turmtür zeichnen
grGrafik.drawRect(xPos+iTurmMitte-iTürbreite,yPos+iTurmhöhe-iTürhöhe,iTürbreite,iTürhöhe);
grGrafik.drawRect(xPos+iTurmMitte,yPos+iTurmhöhe-iTürhöhe,iTürbreite,iTürhöhe);
grGrafik.drawArc(xPos+iTurmMitte-iTürbreite,yPos+iTurmhöhe-iTürhöhe-iTürbreite,2*iTürbreite,2*iTürbreite,180,-180);
//Turmuhr zeichnen
grGrafik.drawOval(xPos+iTurmMitte-iTürbreite,yPos+2*iTürbreite,2*iTürbreite,2*iTürbreite);
grGrafik.drawLine(xPos+iTurmMitte,yPos+3*iTürbreite,xPos+iTurmMitte,yPos+2*iTürbreite+2);
grGrafik.drawLine(xPos+iTurmMitte,yPos+3*iTürbreite,xPos+iTurmMitte+iTürbreite-2,yPos+3*iTürbreite);
//Schiff zeichnen
grGrafik.drawRect(xPos+iTurmbreite,yPos+iTurmhöhe-iSchiffhöhe,iSchiffbreite,iSchiffhöhe);
//Schiffdach zeichnen
grGrafik.drawLine(xPos+iTurmbreite,yPos+iTurmhöhe-iSchiffhöhe-iSchiffdachhöhe,xPos+iTurmbreite+iSchiffdachlänge,yPos+iTurmhöhe-iSchiffhöhe-iSchiffdachhöhe);
grGrafik.drawLine(xPos+iTurmbreite+iSchiffdachlänge,yPos+iTurmhöhe-iSchiffhöhe-iSchiffdachhöhe,xPos+iTurmbreite+iSchiffbreite,yPos+iTurmhöhe-iSchiffhöhe);
//Schifffenster zeichnen
for (int j=1;j<=7;j++)
grGrafik.drawRect(xPos+iTurmbreite+j*2*iTürbreite,yPos+iTurmhöhe-2*iTürbreite-iTürhöhe,iTürbreite,iTürhöhe);
}
© Ralph-Erich Hildebrandt, 24. September 2006