用DDA算法绘制一条直线
生活随笔
收集整理的這篇文章主要介紹了
用DDA算法绘制一条直线
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
用數值微分法(DDA法)繪制任意一條直線;(由鍵盤輸入直線的兩端點坐標)
#include<stdio.h> #include<graphics.h>void DDA(float x1,float y1,float x2,float y2){float x,y,pp,m,n;x=x2-x1;y=y2-y1;m=x1;n=y1;if(x>y)pp=1/x;else pp=1/y;while(m<=x2&&n<=y2){m=m+pp*x;n=n+pp*y;putpixel((int)(m+0.5),(int)(n+0.5),RED);x1=m;y1=n;} }int main() {int gd=DETECT,gmode;float x1,x2,y1,y2;printf("輸入端點坐標:\n");printf("起點:");scanf("%f%f",&x1,&y1);printf("終點:");scanf("%f%f",&x2,&y2);initgraph(&gd,&gmode,"");DDA(x1,y1,x2,y2);getchar();getchar();closegraph(); }(VC下)代碼已經過編譯,可直接使用。
總結
以上是生活随笔為你收集整理的用DDA算法绘制一条直线的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Apache的认证、授权、访问控制
- 下一篇: dda算法_C和C ++中的DDA线图绘