Untitled

 avatar
unknown
plain_text
a year ago
781 B
42
Indexable
#include <graphics.h>
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>

void bresenham(int x0,int y0,int x1,int y1){
    int dx=abs(x1-x0), dy=abs(y1-y0);
    int sx=(x0<x1)?1:-1;
    int sy=(y0<y1)?1:-1;
    int err=dx-dy;

    while(1){
        putpixel(x0,y0,WHITE);   // plot pixel
        if(x0==x1 && y0==y1) break;
        int e2=2*err;
        if(e2>-dy){ err-=dy; x0+=sx; }
        if(e2< dx){ err+=dx; y0+=sy; }
    }
}

int main(){
    int gd=DETECT,gm;
    int x0,y0,x1,y1;

    printf("Enter x0 y0: "); scanf("%d%d",&x0,&y0);
    printf("Enter x1 y1: "); scanf("%d%d",&x1,&y1);

    initgraph(&gd,&gm,"C:\\TURBOC3\\BGI"); // adjust path if needed

    bresenham(x0,y0,x1,y1);

    getch();
    closegraph();
    return 0;
}
Editor is loading...
Leave a Comment