rendered paste body// Kreis.cpp
using namespace std;
#include <iostream>
#include <conio.h>
#include <string.h>
#include "Kreis.hpp"
// Konstruktoren (ueberladen)
Kreis::Kreis(Grafik* gk,float a,float b,float r)
{ x=a; y=b; radius=r;
flaeche=3.1415*radius*radius;
this->gk=gk;
}
Kreis::Kreis(Grafik* gk) // Standardkonstruktor
{ x=y=200;
radius=50;
flaeche=3.1415*radius*radius;
this->gk=gk;
}
////////////////////////////////////////////////////
// Destruktor
Kreis::~Kreis()
{
}
//___ Methoden________________________________________________
void Kreis::ausgeben()
{ flaeche=3.1415*radius*radius;
cout << "Kreis: M(" << x << '|' << y << ") mit Radius "
<< radius << " und Flaeche " << flaeche << endl;
}
float Kreis::gibFlaeche() // liefert als Ergebnis den Wert des Attributs flaeche
{ return flaeche;
}
void Kreis::setzeRadius(float r)
{ radius=r;
flaeche=3.1415*radius*radius;
}
float Kreis::gibRadius()
{ return radius; }
void Kreis::zeichnen()
{ gk->zeichnenKreis(x,y,radius);
}
void Kreis::zeichnen(int farbe)
{ int alteZF=gk->aendernZeichenfarbe(farbe);
gk->zeichnenKreis(x,y,radius);
gk->setzenZeichenfarbe(alteZF);
}
void Kreis::verschiebenUm(int dx,int dy)
{ int alteHF=gk->aendernZeichenfarbe(gk->gibHintergrundfarbe());
zeichnen();
x+=dx; y+=dy;
gk->setzenZeichenfarbe(alteHF);
zeichnen();
}
void Kreis::zoomen(float faktor)
{ int alteHF=gk->aendernZeichenfarbe(gk->gibHintergrundfarbe());
zeichnen();
radius*=faktor;
gk->setzenZeichenfarbe(alteHF);
zeichnen();
}