交通智能 圖形仿真系統(tǒng)C語言成設計報告_第1頁
交通智能 圖形仿真系統(tǒng)C語言成設計報告_第2頁
交通智能 圖形仿真系統(tǒng)C語言成設計報告_第3頁
交通智能 圖形仿真系統(tǒng)C語言成設計報告_第4頁
交通智能 圖形仿真系統(tǒng)C語言成設計報告_第5頁
已閱讀5頁,還剩124頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、c語言課程設計報告交通智能圖形仿真系統(tǒng)題目:交通智能圖形仿真系統(tǒng)班級:自動化1201班組員:程朝陽學號:u201214459杜珂學號:u201214475指導教師:周純杰老師上交日期:2013.11.2目 錄1 引言31.1智能交通的背景31.2編寫目的31.3任務概述42 需求分析42.1需求分析42.2運行環(huán)境53 系統(tǒng)設計63.1功能需求描述63.2程序流程圖63.3功能和操作簡介(界面)63.4程序模塊劃分123.5程序中的名詞定義及注釋164算法分析204.1核心算法分析204.2其他函數算法分析245程序總結385.1編程過程中的疑難點處理385.2程序不足之處416 組員分工42

2、7參考資料428 具體函數解釋及原代碼42 一. 引言 1.1背景智能交通系統(tǒng)(intelligenttransportationsystem,簡稱its)是未來交通系統(tǒng)的發(fā)展方向,它是將先進的信息技術、數據通訊傳輸技術、電子傳感技術、控制技術及計算機技術等有效地集成運用于整個地面交通管理系統(tǒng)而建立的一種在大范圍內、全方位發(fā)揮作用的,實時、準確、高效的綜合交通運輸管理系統(tǒng)。its可以有效地利用現(xiàn)有交通設施、減少交通負荷和環(huán)境污染、保證交通安全、提高運輸效率,因而,日益受到各國的重視。21世紀將是公路交通智能化的世紀,人們將要采用的智能交通系統(tǒng),是一種先進的一體化交通綜合管理系統(tǒng)。在該系統(tǒng)中,車

3、輛靠自己的智能在道路上自由行駛,公路靠自身的智能將交通流量調整至最佳狀態(tài),借助于這個系統(tǒng),管理人員對道路、車輛的行蹤將掌握得一清二楚。 1.2編寫目的 通過對十字路口智能交通和交通規(guī)則的過程分析,建立模擬十字路口交通仿真的圖形界面操作系統(tǒng),對其紅綠燈、車輛運行、車輛減速等多個方面的功能模擬,實現(xiàn)模擬真實的十字路口交通仿真的流程。此次c語言課程設計是本專業(yè)的第一次課程設計,具有重要的意義:通過上個學期對c語言的學習,對c語言編程有了初步的了解,獲得了一定的基礎但是非常缺乏實際的編程經驗,無法從質上對自己的編程技巧有一個很大的提高,這次的課程設計給我們提供了一個非常好的鍛煉機會。通過二個人的分工合

4、作,在實際中運用和訓練程序設計的模塊化和工程化思想和技術,努力掌握c語言精髓;同時提高自己的交流與團隊合作的能力.為以后的更專業(yè)更復雜的課程設計和實踐活動打好基礎。1.3任務概述 實現(xiàn)十字路口的交通運行的全過程模擬,設置東西南北四條路及東西南北四條路所對應的路燈,系統(tǒng)控制路燈亮色情況,并且使車輛在路燈的控制下有序進行交通模擬。如果車輛都駛出界面,仿真模擬結束。程序具備以下功能:車輛數目隨機產生:由系統(tǒng)隨機產生四個方向行駛車輛的數目車輛數目人工添加:人工輸入四個方向行駛車輛的數目路面交通智能化:根據交通規(guī)則,合理安排路燈情況,使車輛行駛效率最優(yōu)化 控制自動化:根據路面情況和路燈情況判斷車輛的行駛

5、情況統(tǒng)計功能:統(tǒng)計一次仿真的數據,并進行分析 要求以十字路口為對象,圖形化模擬馬路、路燈、車輛的一體化交通流程;能對路面情況的進行設計、控制、優(yōu)化和統(tǒng)計等功能。 二.需求分析2.1需求分析智能交通系統(tǒng)具有以下兩個特點:一是著眼于交通信息的廣泛應用與服務,二是著眼于提高既有交通設施的運行效率。與一般技術系統(tǒng)相比。智能交通系統(tǒng)建設過程中的整體性要求更加嚴格這種整體性體現(xiàn)在:(1) 跨行業(yè)特點。智能交通系統(tǒng)建設涉及眾多行業(yè)領域,是社會廣泛參與的復雜巨型系統(tǒng)工程,從而造成復雜的行業(yè)間協(xié)調問題。(2)技術領域特點。智能交通系統(tǒng)綜合了交通工程、信息工程,通信技術、控制工程、計算機技術等眾多科學領域的成果,

6、需要眾多領域的技術人員共同協(xié)作。(3)政府、企業(yè)、科研單位及高等院校共同參與,恰當的角色定位和任務分擔是系統(tǒng)有效展開的重要前提條件。(4)智能交通系統(tǒng)將主要由移動通信、寬帶網、rfid、傳感器、云計算等新一代信息技術作支撐,更符合人的應用需求,可信任程度提高并變得“無處不在”。 我們用tc3.0編寫的c語言程序來模擬自動售貨機的控制及各種操作過程。2.2運行環(huán)境(dos環(huán)境)該系統(tǒng)給予tc2.0和bc31開發(fā),適用于dos3.0以上的所有dos版本和windows操作系統(tǒng);本軟件設計中加入了鼠標和鍵盤操作,因此操作過程必須依賴鼠標和鍵盤才能實現(xiàn)所有功能;本軟件對于顯示卡無特殊要求;本軟件可以允

7、許用戶自定義一些參數,具有良好的人機交互性。本軟件主要的輸入方式是動畫模擬,通過分頁動畫實現(xiàn)小車的步進,通過函數判斷控制小車步進方式。實際操作中需要輸出信息將采用菜單的模式傳遞給用戶。除此之外無其他特殊要求;出現(xiàn)圖形無法顯示或圖形顯示效果差處理辦法:檢查顯示卡驅動是否正常;出現(xiàn)某些子程序的初始化無法正常完成處理辦法:顯示初始化失敗的位置,并退出程序;出現(xiàn)空間分配失敗處理辦法:顯示為內存不夠,退出程序并檢查內存利用情況;三. 系統(tǒng)設計3.1 功能需求描述進入主界面,可以選擇所需的系統(tǒng)信息和仿真入口,并進行點擊。進入車輛數目設置界面,選擇車輛數目生成方式:隨機生成或自定義。若選擇隨機生成,則由系統(tǒng)

8、隨機產生東西南北四個路口車輛的數目,若選擇自定義,則由用戶從輸入框輸入車輛數目進行定義。進入仿真界面,則由鍵盤控制仿真界面的開始與暫停,仿真從進入仿真界面第一次按下空格鍵開始,到車輛全部駛出屏幕結束。3.2程序流程圖(見附錄)3.3功能和操作簡介(界面)菜單界面1點擊“操作介紹”出現(xiàn)仿真操作說明,點擊“關于我們”出現(xiàn)編寫者姓名、學號,點擊“進入模擬”進入菜單界面2,進行路口車輛輸入。進入菜單界面2-設置各個路口車輛數目:點擊“隨機設定”由系統(tǒng)自動生成四個020路口的數目,點擊“自定義”將由用戶手動輸入路口車輛數目,點擊“開始模擬”進入仿真界面隨機產生路口車輛數目單擊路口名稱可輸入該路口車輛數目

9、輸入規(guī)則:必須輸入020之間的整數,否則程序將跳出菜單界面設計圖紙進入仿真界面開始車輛仿真,按任意鍵退出仿真界面設計圖紙3.4 程序模塊劃分在程序模塊的分析中,為了方便理清函數之間的調用關系,我們采用了函數級別的定義方式。自頂向下級次增高,在某些模塊中被多次調用的小功能函數定義為該模塊的工具函數。故main函數被定義為一級函數,在main函數中被直接調用的子函數定義為二級函數,依此類推主函數模塊:#includemain.hvoid main() int gd=vga,gm=vgahi; initgraph(&gd,&gm,c:tc30bgi); cleardevice(); readbmpw

10、el(); /讀取歡迎圖片 cleardevice(); closegraph(); initgraph(&gd,&gm,c:tc30bgi); menu(); /執(zhí)行菜單函數 getch(); closegraph();主函數main()中除了調用welcome ()函數顯示歡迎畫面和menu()函數進入菜單界面;主要子函數是調用的fzxt()函數,,menu()函數即菜單選擇模塊的根函數。下面分別來介紹這個主要模塊。一、圖形模塊:主要是仿真界面:馬路、路燈和車輛二、鼠標模塊:包括鼠標的圖形,鼠標狀態(tài)。三、漢字模塊:中文顯示四、菜單模塊: 1:菜單界面a: 查看仿真操作說明 查看程序編寫人員

11、詳情 進入仿真設置 2.菜單界面b: 設置東西南北各個路口的車輛數目 文字框輸入 5、 交通仿真模塊: 車輛控制、車輛警報檢測、車輛動畫 路燈控制、路燈動畫圖形模塊此模塊用于路面、交通燈及車輛的繪制。本模塊的核心函數:void draw();本模塊的三級函數:(被void fzxt()調用)void draw_avenue() 畫路面的函數 void draw_car() 畫車輛的函數void draw_lamp() 畫路燈的函數鼠標漢字模塊void shubiao() 對鼠標初始化void cursor(int a,int b) 在(a,b)點畫鼠標int read(int *x,int*y

12、 ,int*buttons)調用中斷來讀鼠標的狀態(tài)如果鼠標不動,這一直在里面循環(huán),直到鼠標狀態(tài)改變或是按鍵,就退出循環(huán)void neyxy(int *x,int*y ,int*buttons) 鼠標移動的函數,通過read的返回值在異或的模式下,覆蓋原來的鼠標和畫新的鼠標。outtextxy(int,int ,char *,int) 漢字輸出交通系統(tǒng)仿真模塊(核心)車輛控制模塊void initialize_car(struct car *p,int n) 車輛初始化(坐標、角度、方向)void judge_alarm_line(struct car *p) 車輛警戒線判斷函數void jud

13、ge_alarm_car(struct car *p,int a1,int a2,int a3,int a4) 車輛周圍警報判斷函數void judge_alarm_lamp(struct car *p,struct lamp *pl) 車輛對應路燈情況判斷void control_car(struct car *p,struct lamp *pl,int a1,int a2,int a3,int a4) 控制小車步進的函數void control_speed(struct car *p) 控制小車速度的函數void step1(struct car *p) 車輛在警戒線前的步進情況void

14、step2(struct car *p ) 車輛在警戒線后的步進情況路燈控制模塊void initialize_lamp(struct lamp *pl) 路燈初始化(坐標、顏色)void control_lamp(struct lamp *pl,int g,int *flag) 路燈顏色控制 菜單模塊void menu(); /畫菜單1的函數 void menu_one_choose(frame *); /鼠標操作菜單1的函數int mouseon(frame *); /判斷鼠標是否在文字的杉樹void bklight(frame *,mousestate *); /出現(xiàn)鼠標在文字框上的效果

15、void draw_frameb1(frame ); /大文字框void draw_frameb2(frame ); /小文字框void howtowork(); /出現(xiàn)操作介紹文字框的函數void aboutus(); /出現(xiàn)關于我們文字框的函數void simenu(mousestate *); /畫菜單界面2的函數void menu_two_choose(frame *,frame *,mousestate *); /鼠標操作菜單界面2、鍵盤輸入的函數void car_num_random(frame *p); /鍵入各個路口車輛數目的函數int strtoint(char *); 輔助

16、模塊3.5 程序中的名詞定義及注釋1.對文件名(*.cpp)的解釋car.c主函數draw.c用于畫界面drawframe.c鼠標高亮fzxt.c讀取系統(tǒng)時間 hanzi.c用于中文漢字輸出input.c附有管輸入功能 lamp.c對物品的文件操作main.c進入管理員界面的menu選擇menu.c進入系統(tǒng)的menu選擇mouse.c對鼠標操作readbmp1.c讀圖simula1.c仿真模擬2.程序中的結構定義:交通燈結構struct lamp int x; /燈框當前x坐標 int y; /燈框當前y坐標 int lc; /左燈的顏色 int sc; /中間燈的顏色 int rc; /右燈

17、的顏色int dirt; /燈所在的路的方向 int flag; /燈的順序號;車輛結構struct carint x; /車子中心當前x坐標int y; /車子中心當前y坐標int color; /車子顏色 int alarm_car; /警戒距離警報int alarm_line; /警戒線警報int alarm_lamp; /紅燈警報int dirt; /車子所在的初始路向int street; /車子轉向的路向int speed; /車子當前速度int justment; /首位為所在路,次位為所在道int flag; /用于標志車子是否駛出桌面*/double angle; /車子當前

18、的角度,正北為零度,逆時針;文字框結構struct _frame int x1; 左上點橫坐標 int y1; 左上點縱坐標 int x2; 右下點橫坐標 int y2; 右下點縱坐標 int dx; 文字起始橫坐標校準值 int dy;文字起始縱坐標校準值 char frname20;文字框內的文字frame;鼠標結構typedef struct _mouse int mousex; 鼠標所在位置橫坐標 int mousey; 鼠標所在位置縱坐標 int buttons; 鼠標點擊狀態(tài)mousestate;3. 各個頭文件包含函數1.car.h: void initialize_car(st

19、ruct car *p,int n);void step2(struct car *p );void step1(struct car *p);void control_car(struct car *p,struct lamp *pl,int a1,int a2,int a3,int a4);void judge_alarm_line(struct car *p);void judge_flag(struct car *p);void judge_alarm_car(struct car *p,int a1,int a2,int a3,int a4);void control_speed(s

20、truct car *p); 2. draw.h:void draw_avenue();void draw_car(struct car *p);void draw_lamp(struct lamp *pl);3. drawframe.h:void draw_frameb1(frame );void draw_frameb2(frame );4. fzxt.h:void fzxt(int ,int ,int ,int );5. hanzi.c:void outhzxy(int x,int y,char *str,int color); void outbighzxy(int x,int y,c

21、har *str,int color);6. input.h:int input(frame *p,char *s);7. lamp.h:void initialize_lamp(struct lamp *pl);void judge_alarm_lamp(struct car *p,struct lamp *pl);void control_lamp(struct lamp *pl,int g,int *flag);void lighten_lamp(struct lamp *pl,int k,int color) ;8. menu.h:void menu();void menu_one_c

22、hoose(frame *);int mouseon(frame *);void bklight(frame *,mousestate *);void draw_frameb1(frame );void draw_frameb2(frame );void howtowork();void aboutus();9. mouse.h:int init(int xmi,int xma,int ymi,int yma);int read(int *mx,int *my,int *mbutt);void cursor(int a,int b);void curstoxy(mousestate *ps);

23、void newxy(int *mx,int *my,int *mbutt);void shubiao();10. readbmp1.h:void selectpage(register char page); unsigned char set_svga_mode(int vmode); unsigned int get_svga_mode(); void readbmp(char *p); void readbmpwel(); void readbmpend();11. simula1.h:void simenu(mousestate *);void menu_two_choose(fra

24、me *,frame *,mousestate *);void car_num_random(frame *p);int strtoint(char *);12. 四算法分析4.1 核心算法(fzxt)的分析 void fzxt(int a1,int a2,int a3,int a4) int gd=ega,gm=egahi; int i=0,n=a1+a2+a3+a4,m=0; int tg4=0,0,0,0; int b,b1; struct car p50; /設置車輛數組 struct lamp pl4; /交通燈數組 randomize(); initgraph(&gd,&gm,c:

25、tc30bgi); draw_avenue(); /先畫馬路,在馬路的基礎上進行分頁動畫 for(i=0;ia1;i+) /車輛位置初始設定,因為不能讓車都從一個點出發(fā),所以每個車輛起始點離警戒線遠一點 pi.dirt=1; pi.y=southy0+cardis*i; for(i=a1;i(a1+a2);i+) pi.dirt=2;pi.x=eastx0+cardis*(i-a1); for(i=(a1+a2);i(a1+a2+a3);i+) pi.dirt=3;pi.y=northy0-cardis*(i-a1-a2); for(i=(a1+a2+a3);i(a1+a2+a3+a4);i+

26、) pi.dirt=4; pi.x=westx0-cardis*(i-a1-a2-a3); for(i=0;ia1+a2+a3+a4;i+) b1=random(1001); b=(b1%3)+1; 隨機產生車輛轉彎的方向 pi.street=b; initialize_car(&pi,n); for(m=0;m4;m+) plm.dirt=m+1; 對交通燈進行初始化 initialize_lamp(&plm); initgraph(&gd,&gm,c:tc30bgi); cleardevice(); while(!kbhit() 開始分頁動畫模擬 setactivepage(0);/畫第0

27、頁圖 cleardevice();draw_avenue();for(i=0;in;i+)control_car(&pi,&pl(pi.dirt-1) ,a1,a2,a3,a4); 控制小車步進情況,畫出小車draw_car(&pi); for(m=0;m4;m+) control_lamp(&pl0,tg,&pi.flag); draw_lamp(&plm); 控制交通燈閃動顏色 setvisualpage(0);setactivepage(1);/畫第1頁圖cleardevice();draw_avenue();for(i=0;in;i+) control_car(&pi,&pl(pi.d

28、irt-1),a1,a2,a3,a4); draw_car(&pi);for(m=0;mflag=1) initialize_car(&pi,n); getch(); closegraph(); 車輛的控制主要由3個警報參數決定:警戒線警報、交通燈警報和周圍車輛警報。 這3個警報共同控制了車輛的步進方式和速度,也就由此全面控制車輛。 先由車輛掃描路況,開始給出3個警報,根據警戒線警報和交通燈警報決定車輛的步進方式,解決了車輛遇到紅燈黃燈停下不走的問題;根據車輛的所在道路和周圍車輛警報控制車輛速度,解決了前面一輛車因為紅燈停下而被后面車輛壓過的問題。五程序總結 5.1 編程中的疑難點分析 1.鼠

29、標問題 由于這個程序的菜單要采用鼠標操作,在我一開始,我想借鑒書上的鼠標操作函數,可是發(fā)現(xiàn),如果不懂其中的原理,會在畫完圖,尤其是調用完putimage()函數后,會有鼠標印的留下。但是,后來研究鼠標,發(fā)現(xiàn)其用的是異或的原理,這個是指能夠在原來的的地方把鼠標覆蓋掉,所以每次我都會改寫setwritemode()為異或的形式。 2.內存分配釋放問題 因為這個程序是一個對圖形界面操作的函數,自然要對圖形大量的操作,我們知道,在我們用到getimage()時,我們都會用到指針指向malloc開辟的一處連續(xù)的內存,可是,我們經常會發(fā)現(xiàn)如果圖形比較大,那么malloc開辟不了那么大的內存,就會自動退出來

30、,所以我們只能在開辟小的圖形窗口下,對圖形的操作,但是如果需要大的圖形窗口,我們也只能在原來的圖上操作完后,用單調的背景來覆蓋。比如分配buff=malloc(imagesize(375,85,625,450); if(buff=null) printf(not enough memory); exit(0); 分配這么大的就會退出來后來我們直接用setfillstyle(1,0);bar(375,85,625,450);完成了圖形的覆蓋可是,在后續(xù)的編寫中,當我們添加了對文件的操作時,程序又自動退出來,我以為是有分配不了內存了,我就一直糾結在,圖形內存的分配上。不過,突然靈感來了,我想肯定是

31、之前有內存沒有釋放,可是我檢查了每次分配內存我都釋放了。于是我,就在用printf()一個個找,后來發(fā)現(xiàn)居然是文件分配不到內存,因為我在調用文件操作的函數時,我已經對圖形分配了內存,而且沒有釋放它,而是在調用文件后才釋放。后來我將對文件操作的函數malloc的前面,這樣就解決了內存分配的問題。5.2 程序不足之處1.鼠標的顏色會因為背景的顏色改變而改變2.對動畫部分沒有調好,仿真界面閃動較厲害3.界面的美化不行,高亮有bug存在4.提示功能、鍵盤功能、返回功能等都沒有加上六組員分工6.1 組員分工 程朝陽 所有代碼 2318行李樂 無 0行七參考資料王士元. c高級實用程序設計. 北京: 清華

32、大學出版社. 1996周純杰,劉正林等. 標準c語言程序及應用. 武漢: 華中科技大學出版社. 2005譚浩強. c語言程序設計. 北京: 清華大學出版社, 2000陳超 c語言常用函數速查手冊. 北京: 化學工業(yè)出版社 20108 函數具體解釋及原代碼/*主函數main.c*/#includemain.hvoid main() int gd=vga,gm=vgahi; initgraph(&gd,&gm,c:tc30bgi); cleardevice(); readbmpwel(); cleardevice(); closegraph(); initgraph(&gd,&gm,c:tc30b

33、gi); menu(); getch(); closegraph();/*菜單函數menu.c*/#includemenu.hvoid menu() frame ml3; frame frame_jrmn=265,213,256+frame_xb,213+frame_yb,265+frame_dxb,213+frame_dyb,進入模擬; frame frame_czjs=265,273,256+frame_xb,273+frame_yb,265+frame_dxb,273+frame_dyb,操作介紹; frame frame_gywm=265,333,256+frame_xb,333+fr

34、ame_yb,265+frame_dxb,333+frame_dyb,關于我們; cleardevice(); setbkcolor(8); outbighzxy(40,40,智,9); outbighzxy(110,40,能,9); outbighzxy(180,40,交,9); outbighzxy(250,40,通,9); outbighzxy(320,40,仿,9); outbighzxy(390,40,真,9); outbighzxy(460,40,系,9); outbighzxy(530,40,統(tǒng),9); draw_frameb1(frame_jrmn); draw_frameb1

35、(frame_czjs); draw_frameb1(frame_gywm); ml0=frame_jrmn; ml1=frame_czjs; ml2=frame_gywm; menu_one_choose(&ml0); getch(); closegraph(); readbmpend(); exit(1);void menu_one_choose(frame *pm) mousestate *pmouse; int keyz; int i;/ shubiao(); pmouse-mousex=0,pmouse-mousey=0,pmouse-buttons=0; shubiao(); cu

36、rstoxy(pmouse); cursor(pmouse-mousex,pmouse-mousey); while(1) newxy(&pmouse-mousex,&pmouse-mousey,&pmouse-buttons);if(pmouse-buttons=1) if(mouseon(pm) cleardevice();printf(tttt);simenu(pmouse);pmouse-buttons=0; /模擬函數closegraph();exit(1); else if(mouseon(pm+1) howtowork(); /操作函數pmouse-buttons=0;delay

37、(100); else if(mouseon(pm+2) aboutus(); /關于我們 pmouse-buttons=0; delay(100); else if(mouseon(pm) cursor(pmouse-mousex,pmouse-mousey); bklight(pm,pmouse); else if(mouseon(pm+1) cursor(pmouse-mousex,pmouse-mousey);bklight(pm+1,pmouse); else if(mouseon(pm+2) cursor(pmouse-mousex,pmouse-mousey); bklight(

38、pm+2,pmouse); /* else if(mouseon(pm+3) bklight(pm+3,pmouse); */ int mouseon(frame *pm)int dx,dy,buttons;read(&dx,&dy,&buttons);if( dxpm-x1 & dxx2 & dyy2 & dypm-y1) return 1;else return 0;void bklight(frame *p,mousestate *pms) /高亮按鍵,只用傳入按鍵的結構體,和鼠標的結構體 mousestate pm; setwritemode(0); draw_frameb2(*p);

39、 setwritemode(1); cursor(pms-mousex,pms-mousey); while(1) pm.mousex=pms-mousex; pm.mousey=pms-mousey; newxy(&pms-mousex,&pms-mousey,&pms-buttons);if( pms-mousexp-x1 & pms-mousexx2 & pms-mouseyy2 & pms-mouseyp-y1&pms-buttons=0) if(pms-buttons=1) break; else if(pms-mousexp-x1-8|pms-mouseyp-y1-17) curs

40、or(pms-mousex,pms-mousey); setwritemode(0); draw_frameb1(*p); setwritemode(1); cursor(pms-mousex,pms-mousey); else setwritemode(0); draw_frameb1(*p); setwritemode(1); break; void howtowork() void *buff=null; buff=malloc(imagesize(20,120,240,320); /分配內存 if(buff=null) printf(there is not enough memory

41、); delay(1000); cleardevice(); exit(1); getimage(20,120,240,320,buff); setcolor(6);bar(20,120,240,320);outhzxy(35,133,按esc鍵退出介紹,9);outhzxy(35,173,點“進入模擬”開始設置,5);outhzxy(35,213,按任意鍵退出仿真,12);outhzxy(35,253,現(xiàn)在開始吧!,14); while(1) if(bioskey(0)=esc) break; delay(100);putimage(20,120,buff,copy_put); setwri

42、temode(1); free(buff); void aboutus() void *buff=null; buff=malloc(imagesize(440,120,560,320); /分配內存 if(buff=null) printf(there is not enough memory); delay(1000); cleardevice(); exit(1); getimage(440,120,560,320,buff);setcolor(6);bar(440,120,560,320);outhzxy(455,133,“自動化1201班,4);outhzxy(455,173,程朝陽

43、:,15);outhzxy(455,213,u201214459,15);outhzxy(455,253,李樂:,15);outhzxy(455,293,u201113761,15); while(1) if(bioskey(0)=esc) break; delay(100);putimage(440,120,buff,copy_put); setwritemode(1); free(buff); /*菜單函數simula1.c*/#includesimenu.hvoid simenu(mousestate *p) frame sml7; frame sml_num4; int n; fram

44、e frame_east =80,100,80+frame_xs,100+frame_ys,80+frame_dxs,100+frame_dys,東路; frame frame_south=80,190,80+frame_xs,190+frame_ys,80+frame_dxs,190+frame_dys,南路; frame frame_west =80,280,80+frame_xs,280+frame_ys,80+frame_dxs,280+frame_dys,西路; frame frame_north=80,370,80+frame_xs,370+frame_ys,80+frame_dxs,370+frame_dys,北路; frame frame_random=440,80,440+frame_xb,80+frame_yb,440+frame_dxb,80+frame_dyb,隨機設定; frame frame_selfdefine =440,140,440+frame_xb,140+frame_yb,440+frame_dxb,140+frame_dyb,自定義; fram

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論