C語言編寫鍵盤畫圖程序
筆者在開發(fā)縣級電網(wǎng)調(diào)度自動化系統(tǒng)的過程中,碰到一個要繪制電力系統(tǒng)一次接線圖的問題。由于電力系統(tǒng)一次接線圖比較復(fù)雜,圖上有一些特殊的符號,象變壓器符號、開關(guān)符號等等,用一般的編程方法來繪制比較困難,因此,筆者用C語言開發(fā)了一個手工繪制電力系統(tǒng)一次接線圖的鍵盤繪圖程序,使用該程序繪制的一次接線圖符合用戶需求,效果良好。
使用方法
程序中定義了幾個特殊鍵:
"V”:畫筆提起
"W”:開始畫圖
"R”:開始擦圖
"S”:當(dāng)前圖形存入文件
"E”:調(diào)出已有文件
"C”:畫圓
程序一運行,屏幕上出現(xiàn)一個黃色的邊框來設(shè)定畫圖的區(qū)域,區(qū)域中間出現(xiàn)提起的畫筆符號 ,當(dāng)按下“W”鍵時,畫筆符號變?yōu)?,此時可移動方向鍵(上、下、左、右、左上、左下、右上、右下)來畫圖;當(dāng)按下“R”鍵時,畫筆符號變?yōu)?,此時可移動方向鍵來擦圖;在畫圖過程中,按下“C”鍵,可畫出一個半徑為20個象素點的圓;當(dāng)結(jié)束畫圖時,按下“S”鍵,將畫好的圖形存盤;按下“E”鍵可調(diào)出已有的圖形進(jìn)行編輯。
源程序清單
# include "graphics.h"
# include "stdio.h"
# include "fcntl.h"
# include "stdlib.h"
main()
void save(),load();
void *wg,*rg,*vg,*fy;
int driver,mode;
int c=RED;
int x=320,y=225;
int x1,y1,x2,y2;
int k,k1,k2;
/* initialize grapher */
detectgraph(&driver,&mode);
initgraph(&driver,&mode,"c:\tc");
/* write the pen */
bar(200,10,206,16);
line(203,7,200,10);
line(203,7,206,10);
line(243,7,240,16);
line(243,7,246,16);
line(283,7,280,10);
line(283,7,286,10);
line(283,7,283,16);
相關(guān)推薦:2011計算機(jī)等級考試二級C輔導(dǎo)實例編程匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |