潘如如,高衛(wèi)東,劉基宏,王鴻博,傅佳佳,劉建立
(江南大學(xué) 紡織服裝學(xué)院,江蘇 無錫 214122)
在紡織專業(yè)課程,如“織物組織與結(jié)構(gòu)學(xué)”“紡織CAD原理”“紡織產(chǎn)品設(shè)計(jì)”等教學(xué)中,經(jīng)常需要進(jìn)行織物組織圖、上機(jī)圖的繪制,需要反復(fù)使用到格子模型[1]。教師一般在上課前提前將組織圖和上機(jī)圖繪制好,或者將專用的格子黑板帶入課堂。但是,提前繪制不利于教師講解,且學(xué)生難以直觀地了解組織圖和上機(jī)圖的繪制過程;而格子黑板比較笨重,教師攜帶不便,而且使用時(shí)間長(zhǎng)久以后,黑板上的格子線會(huì)逐漸模糊,不利于學(xué)生觀看。所以,這種教學(xué)方法與現(xiàn)代教學(xué)理念不相適應(yīng),因而對(duì)電子版格子模型的需求極為迫切。
專用的紡織CAD/CAM軟件雖然一般都帶有格子繪制功能[2],但其價(jià)格昂貴,而且?guī)в屑用芄?,不便于教師帶入教室進(jìn)行課程教學(xué)。同時(shí),專用的CAD/CAM軟件具有一定的針對(duì)性,無法適應(yīng)整個(gè)紡織專業(yè)課程的教學(xué),加上軟件功能較為復(fù)雜,使用起來較麻煩,也不利于教師進(jìn)行自行拓展。
為了適應(yīng)紡織專業(yè)課程教學(xué)的發(fā)展,我們?cè)凇凹徔桟AD原理”“紡織產(chǎn)品設(shè)計(jì)”等相關(guān)課程的教學(xué)過程中,以Visual Basic 6.0軟件為工具,開發(fā)了一種專用于紡織專業(yè)課程教學(xué)中織物組織圖、上機(jī)圖繪制的格子型ActiveX控件[3]。本文對(duì)這種格子型控件的功能和使用方法進(jìn)行介紹。
格子型ActiveX控件針對(duì)紡織專業(yè)課程教學(xué)的需要進(jìn)行開發(fā),因此其各項(xiàng)功能與織物組織圖和上機(jī)圖的繪制需要相匹配。
格子型控件內(nèi)包含的格子數(shù)目與織物組織圖中的經(jīng)紗和緯紗根數(shù)對(duì)應(yīng)。在繪制織物組織圖時(shí),一般需要首先確定織物組織循環(huán)經(jīng)紗和緯紗數(shù),這與格子控件中包含的格子數(shù)目相對(duì)應(yīng)。在ActiveX控件中,設(shè)置的默認(rèn)模式中水平方向(緯紗方向)和豎直方向(經(jīng)紗方向)各有20個(gè)格子,即格子控件的格子數(shù)目分布默認(rèn)模式為20×20。
通過調(diào)整格子控件的屬性可以改變水平和豎直方向上的格子數(shù)目。在ActiveX控件中,通過調(diào)整格子控件的GridHNumber和GridVNumber屬性可以完成格子數(shù)目的設(shè)置。圖1所示是將格子控件的這兩個(gè)屬性設(shè)置為GridHNumber=8,GridVNumber=12,即水平方向有8排格子,豎直方向有12列格子。
圖1 格子數(shù)目的設(shè)置
格子大小可根據(jù)教學(xué)需要進(jìn)行設(shè)置,以保證教室中每位學(xué)生都能清晰地看到填繪結(jié)果。在ActiveX控件中,設(shè)置每個(gè)格子的默認(rèn)大小為20像素×20像素。
通過調(diào)整格子控件的屬性,可以改變格子大小,格子的高度和寬度可以單獨(dú)進(jìn)行設(shè)置。在ActiveX控件中,通過調(diào)整格子控件的GridHeight和GridWidth屬性可以完成格子大小的設(shè)置。圖2所示是將格子控件的這兩個(gè)屬性設(shè)置為GridHeight=25,GridWidth=15,即單個(gè)格子的高度為25像素,寬度為15像素。
圖2 格子大小的設(shè)置
格子外框線顏色決定了格子控件的美觀程度,選擇合適的顏色搭配,方便學(xué)生在課堂上接受教師講解的內(nèi)容。在ActiveX控件中,外框線的顏色默認(rèn)為黑色,可根據(jù)教學(xué)需要進(jìn)行顏色的設(shè)置。
格子控件外框線分為兩種,一種稱為分組格子外框線,另一種稱為普通外框線,兩者的顏色可以進(jìn)行單獨(dú)設(shè)置。在繪制織物組織圖時(shí),如果需要重復(fù)繪制,可以將格子控件分為若干個(gè)區(qū)域,每個(gè)區(qū)域之間可以通過設(shè)置分組格子外框線顏色進(jìn)行區(qū)分。在設(shè)置格子控件外框線顏色時(shí),首先設(shè)置格子控件的分組數(shù)目,通過改變格子控件的GroupHNumber和GroupVNumber屬性完成;然后分別進(jìn)行分組格子外框線和普通外框線的顏色設(shè)置,通過設(shè)置格子控件的GroupHLColor、GroupVLColor、lLineColor和vLineColor 4個(gè)屬性完成。
格子的填繪模式是指進(jìn)行格子填繪時(shí),格子中顯示的樣式。一般的專業(yè)CAD/CAM軟件只適用于普通織物,因此其繪制模式只有2~3種,而在紡織專業(yè)課程教學(xué)中,在繪制復(fù)雜組織的織物圖時(shí),比如雙層或者多層織物,有時(shí)需要4~5種,甚至更多的不同組織點(diǎn)形式。在ActiveX控件中,可支持最多9種不同形式的組織點(diǎn)。
通過調(diào)整格子控件的屬性,可以選擇格子控件的填繪模式。在ActiveX控件中,通過調(diào)整格子控件的PaintKind屬性可以進(jìn)行格子控件填繪模式的選擇,其取值范圍為0~8,分別表示不同的填繪模式。圖3是利用格子控件繪制的一種雙層織物組織圖,其中包含了4種不同的組織點(diǎn)形式。
圖3 格子填繪模式的選擇
將格子控件的填繪結(jié)果,即織物組織圖或上機(jī)圖以矩陣數(shù)據(jù)的形式進(jìn)行保存,可以讓學(xué)生更為透徹地理解組織圖和上機(jī)圖的本質(zhì)。教師也可以通過這種形式提前將組織圖繪制結(jié)果進(jìn)行保存,以靈活地調(diào)整課堂教學(xué)進(jìn)度。
在開發(fā)格子型ActiveX控件時(shí),結(jié)合了紡織CAD原理的教學(xué)經(jīng)驗(yàn),將格子控件的繪制結(jié)果以矩陣形式進(jìn)行保存和讀取,圖4即為圖3所示的雙層織物組織圖的數(shù)據(jù)保存結(jié)果。
圖4 填繪數(shù)據(jù)的保存
圖4中標(biāo)識(shí)1部分中的第一個(gè)數(shù)字表示豎直方向的格子數(shù),第二個(gè)數(shù)字表示水平方向的格子數(shù);標(biāo)識(shí)2部分中,不同的數(shù)字表示格子控件PaintKind屬性的不同取值,用于表示格子控件的不同填繪模式。格子控件填繪結(jié)果的文件保存格式為*.pat,在格子控件中帶有SaveData和ReadData函數(shù),可以通過調(diào)用函數(shù)實(shí)現(xiàn)填繪數(shù)據(jù)的保存。格子控件本身帶有彈出菜單,在格子控件上點(diǎn)擊鼠標(biāo)右鍵,會(huì)調(diào)出彈出式菜單,菜單中包含有“保存”和“讀取”功能,可以直接進(jìn)行填繪數(shù)據(jù)的保存和讀取。保存(讀取)的路徑名和文件名通過對(duì)話框進(jìn)行選擇和設(shè)置。
在應(yīng)用多媒體進(jìn)行紡織專業(yè)課程教學(xué)時(shí),演示文稿上經(jīng)常需要有組織圖和上機(jī)圖,供教師教學(xué)和學(xué)生學(xué)習(xí)使用。雖然可以通過截圖工具實(shí)現(xiàn),但不夠便捷,尤其是“織物組織與結(jié)構(gòu)學(xué)”課程,每節(jié)課都需要使用大量的組織圖。為此,在開發(fā)格子控件時(shí),專門開發(fā)了圖像保存功能。在采用格子型ActiveX控件填繪了相關(guān)的組織點(diǎn)以后,可以調(diào)用格子控件自帶的保存圖像功能,將繪制結(jié)果存儲(chǔ)為圖像。通過調(diào)用格子控件帶有的WriteImage函數(shù)實(shí)現(xiàn)圖像的保存,圖像格式包括bmp、jpg和tif。
在開發(fā)格子型ActiveX控件時(shí),采用的軟件為Visual Basic 6.0,能夠適用于微軟公司的相關(guān)程序設(shè)計(jì)語言,其他程序語言也可以按照本文介紹的方式進(jìn)行格子控件的開發(fā)。
在相關(guān)程序完成后,將格子控件存儲(chǔ)為TexGrid.ocx文件。以Visual Basic 6.0中的使用流程來介紹格子控件的使用。首先在“工具箱”的空白處點(diǎn)擊鼠標(biāo)右鍵,在彈出菜單中選擇“部件”,調(diào)出“部件”對(duì)話框;在“控件”頁面中點(diǎn)擊“瀏覽(B)…”按鈕,將TexGrid.ocx控件添加為ActiveX控件。這時(shí)在工具箱中就會(huì)出現(xiàn)TexGrid控件按鈕,其余使用過程與普通控件一致。按照本文介紹,可以進(jìn)行格子控件的相關(guān)功能使用。
在繪制織物上機(jī)圖時(shí),可以使用多個(gè)格子控件的組合。如果需要體現(xiàn)整體性效果,還可以專門放置連接型的格子控件,即這些格子不需要填繪數(shù)據(jù),只顯示其中的一些豎線和橫線,起連接的作用。
筆者針對(duì)紡織專業(yè)課程教學(xué)的需要,自行開發(fā)了專用的格子型ActiveX控件,不僅可以提供給教師使用,還可以根據(jù)教學(xué)需要提供給學(xué)生課后學(xué)習(xí)使用,方便學(xué)生與教師的交流。在開發(fā)過程中,結(jié)合了織物組織與結(jié)構(gòu)學(xué)、紡織CAD原理和計(jì)算機(jī)程序設(shè)計(jì)等多門課程教學(xué)的實(shí)踐經(jīng)驗(yàn),使得開發(fā)出的格子控件具有較好的實(shí)用性,體現(xiàn)了紡織專業(yè)多課程聯(lián)合教學(xué)的優(yōu)勢(shì)。該格子控件采用了ActiveX控件的開發(fā)原理,未來將根據(jù)實(shí)踐教學(xué)需要,不斷地對(duì)其功能進(jìn)行進(jìn)一步完善和提高。
參考文獻(xiàn):
[1] 顧平.織物組織與結(jié)構(gòu)學(xué)[M].上海:東華大學(xué)出版社,2010.
[2] 祝雙武,石美紅,段亞峰,等.紡織CAD/CAM[M].北京:中國(guó)紡織出版社,2007.
[3] 牛又奇,孫建國(guó).Visual Basic 程序設(shè)計(jì)教程[M].蘇州:蘇州大學(xué)出版社,2010.