期刊VIP學(xué)術(shù)指導(dǎo) 符合學(xué)術(shù)規(guī)范和道德
保障品質(zhì) 保證專業(yè),沒有后顧之憂
來源:期刊VIP網(wǎng)所屬分類:光電技術(shù)時(shí)間:瀏覽:次
摘要:DOS操作系統(tǒng)是個(gè)人計(jì)算機(jī)上的一類操作系統(tǒng)。從1981年直到1995年的15年間,磁盤操作系統(tǒng)在IBM PC 兼容機(jī)市場中占有舉足輕重的地位。文章發(fā)表在《電子游戲軟件》上,是計(jì)算機(jī)論文發(fā)表范文,供同行參考。
關(guān)鍵詞:DOS界面,圖形編輯軟件,圖形設(shè)計(jì)
磁盤操作系統(tǒng)是個(gè)人計(jì)算機(jī)上的一種操作系統(tǒng)附加繼承下來操作系統(tǒng)的載體。從1981年MS-DOS1.0直到1995年MS-DOS7.1的15年間,DOS做為微軟公司在個(gè)人計(jì)算機(jī)上使用的一個(gè)操作系統(tǒng)載體,推出了多個(gè)版本。DOS在IBM PC 兼容機(jī)市場中占有舉足輕重的地位。可以直接操縱管理硬盤的文件,以DOS的形式運(yùn)行。
目前用作DDC的PC總線工控機(jī)(IPC)大部分工作在DOS界面上,而DOS不具有像Windows那樣美觀方便的圖形用戶接口(GUI)。生成工藝流程圖等復(fù)雜圖形若用程序設(shè)計(jì)語言直接編程需花費(fèi)大量精力和代碼,且不易修改。設(shè)計(jì)出數(shù)據(jù)文件小,占用內(nèi)存少的圖形編輯軟件是控制界的一個(gè)研究課題。這里介紹一種生成圖素?cái)?shù)據(jù)文件的通用圖形編輯軟件的設(shè)計(jì)方法。
一、數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)文件格式
由于所有的操作都基本建立在圖素的基礎(chǔ)之上,故數(shù)據(jù)結(jié)構(gòu)也以圖素為中心。以下以圓、直線、矩形、字符串為例,其它圖素類似。
1.定義所需圖素
二、圖形編輯功能的實(shí)現(xiàn)
本軟件包含的圖形編輯功能主要有:作圖、修改、移動、刪除、復(fù)制,下面僅舉幾例說明實(shí)現(xiàn)的方法。
2.圖形的移動、刪除、復(fù)制功能
以移動為例,首先用箭頭鍵或鼠標(biāo)框取要移動的區(qū)域,區(qū)域矩形的左上,右下坐標(biāo)分別為(block-x1,block-y1),(block-x2,block-y2),然后移動標(biāo)識矩形到要到達(dá)的地方,確定。這樣標(biāo)識矩形的終止位置與初始位置存在一個(gè)偏差,水平與垂直偏差分別為dl-x,dl-y。
接下來搜索內(nèi)存圖素鏈表,確定每個(gè)圖素的外接矩形,判斷外接矩形是否在初始標(biāo)識矩形內(nèi),若在,則將該圖素的坐標(biāo)屬性值改變dl-x,dl-y。清除圖形區(qū),根據(jù)新的圖素鏈表作圖。
圖形的刪除功能類似,只需將符合條件的圖素從鏈表中清除,再修改Elementcount值即可。
拷貝圖形則只需將符合條件的圖素備份一個(gè)結(jié)點(diǎn),修改結(jié)點(diǎn)的坐標(biāo)屬性值,再將該結(jié)點(diǎn)加入鏈表,相應(yīng)增加Elementcount的值。
三、文件功能的實(shí)現(xiàn)
存盤時(shí),打開文件,寫入圖形的背景顏色,寫入圖素個(gè)數(shù)Elementcount,再將內(nèi)存鏈表中各圖素的屬性值依次寫入文件即可。
讀盤時(shí),在內(nèi)存中動態(tài)建立圖素鏈表,將文件中的圖素屬性值依次放入鏈表中,再根據(jù)背景顏色、圖素屬性值在屏幕上顯示圖形。
存盤過程實(shí)現(xiàn)如下。
savefile(char * filename)
{
FILE *fp;
int i;
List-temp=List-head;
Eid=0;
if((fp=fopen(filename,"w b"))==NULL)
{
printf ("%s", "Cant't open the file ");
exit(1);
}
fwrite(&back-color, sizeof(char),1,fp);
fwrite(&Elementcount,sizeof(int),1,fp);
for(i=0;i{ List-temp->ElementID=Eid;
fwrite(List-temp,sizeof(ElementList),1,fp);
List-temp=List-temp->next;
Eid ;
}
fclose(fp);
}
四、應(yīng)用程序編程接口
應(yīng)用程序編程接口主要功能是讀圖形文件并顯示,對畫面圖素進(jìn)行動態(tài)刷新。這些接口均以函數(shù)形式出現(xiàn),供控制應(yīng)用程序調(diào)用。
1.draw-chart (char * filename)功能:讀圖形文件,在內(nèi)存中建立圖素鏈表,顯示圖形。
2.change-chart(int Element-ID, int how)功能:改變圖素Element-ID的特性,怎樣改變由how決定。該接口能方便地實(shí)現(xiàn)圖形的動態(tài)刷新。
3.clear-chart( )功能:釋放圖素鏈表占用的內(nèi)存。
4.draw ( char * filename)功能:不建立鏈表,邊讀圖形文件,邊顯示。該函數(shù)不占用內(nèi)存,適用于圖素多、數(shù)據(jù)文件較大,而又不需動態(tài)刷新的圖形畫面顯示。
中國科技核心期刊網(wǎng)投稿須知:《電子游戲軟件》是國內(nèi)著名的一家游戲雜志,半月刊,隸屬于次世代傳媒聯(lián)盟,簡稱“電軟”。始創(chuàng)于1994年6月,前身為《GAME集中營》,是中國第一本正式的游戲雜志。在近十年的風(fēng)雨蒼黃中,一直是青少年流行文化的倡導(dǎo)者,一直站在游戲業(yè)發(fā)展的最前端。一貫秉持追求品質(zhì),不斷創(chuàng)新的態(tài)度,博得了廣大讀者的信賴與肯定。