Arc function
hwsw famulus
hwsw at famulus.hu
Mon Mar 14 22:36:38 CET 2005
Hali !
Megprobáltam C-ben, müködik
csak nálam a a 4. nyolcad ivet huzza.
Aha.... jogos
mert en atforgattam rendes
alul van a bal sarokban az origo
modira a formon valo rajzolast
Ezert nekem ugy latszik, ahogy irtam :-)))
KJ
=================================================
void DrawCircle(WORD x, WORD y, WORD rad, BYTE color)
{
long Hiba; //hiba valtozo
long X;
long Y;
long DU; // hiba modosito, ha csak X lepett
long DD; //hiba modosito, ha X es Y is lepett
Hiba = 1L - rad;
X = 0;
Y = rad;
DU = 3;
DD = 5L - (2L * rad);
// kezdopont kirajzol
pixel(X+x,Y+y,color);
// KorCikkInterpolal:
// DoEvents
// 'Vege a 90 foktol 45 fokigtarto resznek?
while(!(X > Y))
{
//'x mindig lep
X = X + 1;
if(Hiba < 0)
{
//az x-heztartozo felso y a jobb
//azaz az aktualison marad
Hiba = Hiba + DU;
DU = DU + 2;
DD = DD + 2;
}
else
{
//az x-heztartozo also y a jobb
//azzaz y mar lephet egyet lefele
Y = Y - 1;
Hiba = Hiba + DD;
DU = DU + 2;
DD = DD + 4;
}
//aktualis kirajzol
pixel(X+x, Y+y,color);
}
}
Köszi megegyszer.
Üdv Zoli
-----------------------------------
Szponzorunk: http://tonerbolt.hu/
More information about the Elektro
mailing list