Dibuja el cÃÂrculo de Bresenham
#include<iostream.h> #include<graphics.h> #include<math.h> #include<conio.h> #include<stdio.h> #include<process.h> #include <stdlib.h> #include<dos.h> int convertx(int k) { return(320+k); } int converty(int k) { return(240-k); } int convertxc(int k) { return(320+k); } int convertyc(int k) { return(240-k); } void axis(); int circlemid(int,int,int); void plotpoint(); void main() { int gdriver=DETECT,gmode; initgraph(&gdriver,&gmode,"c:\tc1\bgi"); float xc,yc; float r; while(1) { cout<<"n Enter The Center Of The Circle : "; cin>>xc>>yc; cout<<"n Enter the Radius Of The Circle: "; cin>>r; circlemid(xc,yc,r); cout<<"n Do you want to continue ('y' or 'Y') : "; char c; c=getch(); if(c=='y' || c=='Y') break; } } void axis() { setcolor(1); line(320,0,320,480); line(0,240,640,240); } void plotpoint(int xc,int yc,int x1,int y1) { delay(50); putpixel(convertxc(xc)+x1,convertyc(yc)+y1,1); putpixel(convertxc(xc)-x1,convertyc(yc)+y1,2); putpixel(convertxc(xc)+x1,convertyc(yc)-y1,3); putpixel(convertxc(xc)-x1,convertyc(yc)-y1,4); putpixel(convertxc(xc)+y1,convertyc(yc)+x1,5); putpixel(convertxc(xc)-y1,convertyc(yc)+x1,6); putpixel(convertxc(xc)+y1,convertyc(yc)-x1,7); putpixel(convertxc(xc)-y1,convertyc(yc)-x1,8); } int circlemid(int xc,int yc,int r) { int x,y; x=0; y=r; axis(); putpixel(convertxc(xc),convertyc(yc),5); plotpoint(xc,yc,x,y); double p=1-r; while(x<y) { if(p<0) { x=x+1; p=p+2*x+1; } else { x=x+1; y=y-1; p=p+2*(x-y)+1; } plotpoint(xc,yc,x,y); } return(0); }
Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress las eliminó al verlas como etiquetas HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios. Y lo mas importante: Todos los ejemplos fueron realizados por personas con únicamente conocimiento básico del lenguaje, no de programación.
Otro punto importante: Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:
- Si es lenguaje C [c]Código en C[/c]
- Si es lenguaje Pascal [pascal]Aquí dentro el código de Pascal[/pascal].
De esta manera el código coloreas el código.
Otro punto importante para muchos que sienten que se les ignora: Todos los comentarios los reviso y en su debido momento los apruebo, pero ojo con el con lo siguiente:Me reservo el derecho de alterar, publicar o no los comentarios as´ como cambiar mis condiciones en el momento que así lo requiera.
¿estas de acuerdo? entonces adelante que ya te he quitado bastante tiempo leyendo esta basura de advertencias :)