Home » Kỹ thuật đồ họa » Các giải thuật sinh đường tròn trong C/C++
Các giải thuật sinh đường tròn trong C/C++
Người đăng: culaoxanh88 on Thứ Năm, 29 tháng 8, 2013
1. Giải thuật sinh đường tròn Bresenham:
void Bre_circle(int xc, int yc, int Radius, int color) {
int x, y, p;
x = 0;
y = Radius;
p = 3 - 2 * Radius;
while (x <= y) {
putpixel(xc + x, yc + y, color);
if (p < 0)
p += 4 * x + 6;
else {
p += 4 * (x-y) + 10;
y--;
}
x++;}
}
2. Giải thuật sinh đường tròn Midpoint :
void Mid_circle(int xc, int yc, int Radius, int color) {
int x, y, d;
x = 0;
y = Radius;
d = 1- Radius;
while (x <= y) {
putpixel(xc + x, yc + y, color);
if (d< 0)
d +=2 * x + 3;
else {
d += 2 * (x-y) + 5;
y--;
}
x++;
}
}
{ 0 nhận xét... read them below or add one }
Đăng nhận xét