Red de conocimiento informático - Problemas con los teléfonos móviles - Establecer programación de píxeles

Establecer programación de píxeles

void RoundBre(int x1, int y1, int R, CDC pDC)

{

//Centro del círculo (x1, y1), píxel actual I(, yi), píxel derecho H (, 1, y), píxel inferior derecho D (, 1, yi-1), píxel inferior V (.

int, yi, dd, m, n;

// Distancia al centro al cuadrado DH =(Xi 1)*(Xi 1) yi * yi-r * r; dd=(xi 1)*(xi 1) (Yi-1)*(Yi-1)-R * R ; dv = Xi * Xi (yi-1)*(yi-1)-R * R;

Xi = 0; // Punto de partida (0, R)

yi = R;

DD = 2-2 * R; //La diferencia de distancia central del píxel inferior derecho del punto inicial DD = 1(r-1)*(r-1)-r * r.

pDC.SetPixel(x1, y1, RGB(0, 0, 255)); //Dibuja el centro del círculo y demuestra que el centro del círculo debe ocupar un píxel. p>

while(yi gt=xi) // Pasa al octavo círculo; Yi gt=0 puede dibujar un cuadrante

{

pDC. , Yi y1, RGB(255,0,0)); //2 área, traducción de coordenadas (x1, y1) para dibujar un círculo

pDC(yi x1, xi y1, RGB( 255, 0, 0)); //1 área

pDC.SetPixel(-xi x1, yi y1, RGB(255, 0, 0)); // Área 3

pDC. 0, 0)); //Área 4

pDC.(-yi x1, -xi y1, RGB(255, 0, 0));

pDC.SetPixel(-xi x1,-yi y1,RGB(255,0,0)); //Sexta área

pDC.SetPixel(xi x1,-yi y1,RGB(255) ,0) , 0)); //Séptima área

pDC(yi x1, -xi y1, RGB(255, 0, 0)); //Octava área

if(DD lt; 0) //D está en el círculo; h está dentro o fuera del círculo; seleccione ho D, dh gt=0, dd lt0, m = | DH = DD | DD yi )-1;

{

m = 2 *(DD yi)-1;

Si (m lt=0) //Toma el píxel derecho H (xi 1, fácil); cuando m = 0, toma el punto correcto.

{

DD = DD 2 * Xi 3; // Encuentra el píxel inferior derecho de H (xi 2, yi-1), DD = (Xi 2)*(Xi 2 ) (yi-1)*(yi-1)-r * r

Xi = Xi 1;

}

De lo contrario //Toma el inferior píxel derecho D (xi 1, yi-1).

{

DD = DD 2 *(Xi-yi 3 //Encuentra el píxel inferior derecho de D (xi 2, Yi-2), DD = (xi 2); ) * (xi 2) (Yi-2) *(Yi-2)-r * r

Xi = Xi 1;

yi = yi-1;

}

}

else if(DD gt; 0) //D está fuera del círculo; v está fuera o en el círculo; elija d o v dd gt0; , dv lt=0, n = | DD |-| dv | = 2 *(DD-Xi)-1;

{

n = 2 *(DD-Xi) -1 ;

If (n lt=0) //Toma el píxel inferior derecho D (xi 1, fácil -1 cuando n=0, tómalo

{<); /p>

DD = DD 2 *(Xi-yi 3); //Encuentra el píxel inferior derecho de D (xi 2, yi-2), DD = (xi 2) * (xi 2) (yi- 2) *(yi -2)-r * r

Xi = Xi 1;

yi = yi-1;

}

De lo contrario// Elimina el píxel V(xi, yi-1)

{

DD = DD-2 * yi 3 // Encuentra V (xi 1, yi-2; )DD = ( Xi 1)*(Xi 1) (Yi-2) *(Yi-2)-r * el píxel inferior derecho de r

yi = yi-1;

}

}

De lo contrario, si (dd==0) //D está en el círculo, tome D(xi 1, Yi-1).

{

DD = DD 2 *(Xi-yi 3 //Encuentra el píxel inferior derecho de D (xi 2, Yi-2), DD = (xi 2); ) * (xi 2) (Yi-2) *(Yi-2)-r * r

Xi = Xi 1;

yi = yi-1;

}

}

}

No olvides cambiar el método SetPixel en CDC.

Se dice que Tianxia es un sitio web novedoso muy bueno y que vale la pena tener.