AutoCAD的線型與填充圖案開發(fā)技術(shù)
當您在使用AutoCAD進行圖形設(shè)計時,常常會感到現(xiàn)有的線型與填充圖案不能滿足自己的要求。因為AutoCAD畢竟是美國的軟件,它采用的標準線型與填充圖案與我國現(xiàn)行的繪圖標準和有關(guān)規(guī)定不盡吻合,因此您有必要定制一套自己的線型與填充圖案,以滿足繪圖的需求。下面將以AutoCAD 2000中文版為藍本,詳細介紹線型與填充圖案的開發(fā)技術(shù)。
一、線型的開發(fā)
1.線型文件的定義格式
要開發(fā)出一套自己的線型,我們可以先學習一下AutoCAD 2000本身本帶的標準線型文件,以便有所借鑒。我們找到AutoCAD 2000的標準線型文件ACAD.LIN,這個文件位于AutoCAD所在路徑的Support子目錄下,用一般的文本編輯器(如記事本、寫字板)即要打開,該文件的內(nèi)容如圖1所示。
現(xiàn)在我們來研究一下這個文件。文件中“;;”代表注釋行。因此我們可以利用它來添加一些注釋性文字,以增強文件的可讀性。
每種線型都可以定義為兩行,第一行定義線型的名稱和線型說明。行首必須是以“*”開始,其后是線型名稱。線型的描述也是起一個直觀的注釋作用,最好加上,不過這種描述不能超過47個字符。第二行才是真正描述線型的代碼。行首的“A”代表對齊方式。在這種對齊方式下,第一個參數(shù)的值應該大于或等于0,第二個參數(shù)的值應該小于0。簡單地說:正值表示落表,AutoCAD會畫出一條相應長度的實線;0表示畫一個點;負值則表示提筆,AutoCAD會提筆空出相應長度。我們可以想像成繪圖筆的工作過程,就很容易理解了。要注意的是,這些字符之間以半角的逗號隔開,每一行結(jié)束必須按回車鍵,最后一行也不例外。另外,在*.LIN文件中,每個線型文件最多可容納280個字符。
說了這么多,您可能還沒有明白,不要緊,現(xiàn)在讓我們來分析一下第一種線型Border,首先的“.5”表示正數(shù)0.5,也就是畫一條0.5個單位長的線;然后的“-.25”表示負的0.25,也就是留一段0.25個單位長的空白;緊接著畫0.5個單位長的線,0.25個單位長的空白,0表示畫一個點,然后又是0.25個單位長的空白,如圖2所示。
在清楚線型的定義之后,我們不妨來做一個自己的線型,根據(jù)建筑制圖的相關(guān)規(guī)定,新建一個雙點劃線的線型,用于假想輪廓線和成型前原始輪廓線的繪制,如圖3所示。
我們將這個線型命名為outline,那么這個雙點劃線的線型則可以做如下定義:
*OUTLINE,outline ______..______..______
A,1.0,-.1,0,-.1,0,-.1
將這兩行添加到ACAD.LIN文件中,存盤并退出文本編輯器。啟動AutoCAD 2000,在使用我們定義的outline線型之前,需要加載該線型。使用“格式”菜單中的“線型”命令打開“線型管理器”對話框,單擊“加載”按鈕,打開“加載或重載線型”對話框,單擊“文件”按鈕,然后選擇ACAD.LIN文件,單擊打開按鈕。從可用線型列表中選擇“OUTLINE”線型,單擊“確定”按鈕將其加載,如圖4所示。
在“線型管理器”對話框中選擇OUTLINE線型,然后單擊“當前”按鈕,將該線型置為當前線型,單擊“確定”按鈕,加載完成,如圖5所示。
現(xiàn)在可以使用繪圖命令繪制幾個對象(如圖6所示),如果您看不到線型效果,可能需要放大繪圖窗口。
2.線型的開發(fā)方法
從第1節(jié)可以看出,我們可以直接用文本編輯來新建線型文件。實際上,AutoCAD 2000還提供了在其系統(tǒng)內(nèi)部生成線型的命令“LINETYPE”。而且新建的線型即可以直接追加到ACAD.LIN文件的末尾,也可以另外定義線型文件。下面將對這些方面分別作介紹。
我們以第1節(jié)中建立的OUTLINE線型為例,先來看一下LINETYPE的命令的使用。啟動AutoCAD 2000,輸入命令“-linetype”(注意前面有一個橫線,如果沒有這個橫線將打開“線型管理器”對話框)。輸入C,新建一個線型,輸入要創(chuàng)建的線型名稱,比如outline,屏幕彈出“創(chuàng)建或附加線型文件”對話框。這時,您可以在原有的文件ACAD.LIN文件中增加新的線型,也可以新建一個線線文件,這里我們新建一個名為myline.lin的線型文件,單擊“保存”按鈕。此時命令行上顯示“說明文字”,輸入對線型的簡單說明。如果您保存線型文件已經(jīng)包含了outline線型,在這之前會有一條詢問您是否覆蓋的信息。現(xiàn)在就可以輸入線型的圖案了,仍然輸入A,1.0,-.1,0,-.1,0,-.1,回車結(jié)束線型的定義。此時,AutoCAD生成一個新的線型文件myline.lin,整個操作過程的系統(tǒng)提示信息如圖7所示。
同樣,我們也可以用-linetype命令加載線型,在命令行要求輸入選項時,輸入L,然后輸入要加載的線型,如outline,選擇保存線型的文件,這里選擇myline.lin文件,命令行提示線型已經(jīng)加載,使用鍵退出命令。當然,您也可以使用“線型管理器”來加載線型。
3.復全線型的定義與開發(fā)
AutoCAD不僅能定義由短線、間隔和點組成的簡單線型,還可以開發(fā)出較為復雜的線型,以滿足特殊的需要。比如說表示籬笆的線型。復合線型功能是從AutoCAD R13版本起新增的功能,可以在定義的線型中嵌入文本和形文件(.SHX)中的形。這里我們將介紹在線型中嵌入文本,形的插入相當復雜一些,我們這里將不作介紹。
我們?nèi)匀谎赜脤W習簡單線型定義的思路,還是先研究一個標準的范例,總結(jié)出其中的規(guī)律,圖8顯示的線型是一個籬笆的復合線型。那么這個線型是怎么樣定義的呢?很簡單,只有以下兩行語句:
*LB_LINE,----X----X----X----
A,1.0,-.25,["X",STANDARD,S=.2,R=0,X=-.1,Y=-.1],-.25
第一行沒有什么特別的,跟簡單線型定義一樣,是線型名和線型的簡單描述。第二行的A當然是對齊符號,數(shù)字的意義仍然與前面一樣。我們集中精力來看文本的嵌入。
“X”是嵌入的文本,注意必須加上雙引號!癝TANDARD”是文本式樣的名字,如果當前圖形中沒有該樣式,則AutoCAD不允許使用該線型。
“S=.2”確定文本的比例系數(shù)為0.2。如果使用固定高度的文本,AutoCAD會將此高度乘以比例系統(tǒng)數(shù);如果使用的是可變高度的文本,則AutoCAD會把比例系統(tǒng)數(shù)看成絕對高度。
“R=0”表示文本相對于當前線段方向的轉(zhuǎn)角。0表示文本與所給線段方向一致,這也是缺省值。
“X=-.1,Y=-.1”為可選項,它們確定相對于當前點的偏移量。缺省時AutoCAD將文本字符串的左下角點放在此當前點。X就是當前線段的方向,Y則是垂直于線段向上的方向。這兩個偏移量將使文本的定位更精確。
復合線型的使用同簡單線型的使用一樣,也是先裝入再調(diào)用,明白了復合線型的定義格式之后,我們就可以自己定義線型了。要創(chuàng)建復合線型,只能是編輯已有線型文件或者建立新的線型文件來達到目的,而不能像定義簡單線型那樣,采用AutoCAD內(nèi)部以命令行添加線型定義代碼的方式。
二、開發(fā)填充圖案
在繪圖時,我們經(jīng)常會在一定區(qū)域內(nèi)填充某些圖案,也就是“圖案填充”,以起到區(qū)分一個區(qū)域的各組成部分及其構(gòu)成材料的作用,比如我們在繪制混泥土墻面時,就需要用到圖案填充。在AutoCAD系統(tǒng)中圖案填充的功能是通過執(zhí)行HATCH(填充)或者BHATCH(邊界填充)命令來實現(xiàn)的。AutoCAD提供的一些形式的圖案都位于Suport文件夾下的acad.pat文件中,可以用任何文本編輯器打開它。
圖案是由一種或多種圖案直線組成的。AutoCAD對直線的數(shù)量沒有限制。每一種圖案的各條線相互平等且線型相同。因此,只要確定了該圖案線中的一條基準圖案線的方位、線型及其相鄰平行線與該基準線的相對位置,則這種圖案線就唯一確定了。在AutoCAD中,基準圖案線的方位由三個參數(shù)決定(如圖9所示),即基準線的起點(dx,dy)和基準線與X軸的夾角A(逆時針為正);鶞蕡D案線的定義與一般線型的定義完全相同,所以當線型為實線時可以不作定義。在基準圖案線確定以后,相鄰平行線與基準圖案線的相對位置由兩個參數(shù)決定,即相鄰平行線起點與基準圖案線起點,在線長度方向的距離(dl)和平行線之間的距離(ds)。
我們?nèi)匀灰訟utoCAD自帶的ACADISO.PAT文件為例(如圖10所示),從中取出ANGLE圖案文件。
第一行是星號加圖案名和圖案的描述信息,接下來的兩行就是圖案的具體內(nèi)容,可以有一行或幾行,格式為A,dx,dy,dl,ds[定義線型的一組參數(shù)],實例與格式對照(如圖11),您可以很容易地看出圖案中兩條線的繪制方式。
如果您覺得ACAD.PAT文件提供的圖案不夠豐富和理想,也可以自己定制圖案或者直接修改原圖案。為AutoCAD開發(fā)填充圖案的過程比較接近與復合線型的定義,但要稍微復雜一些,不過,有了前面的基礎(chǔ),相信您也不難掌握其實質(zhì)。可將新定義的圖案加入庫文件ACAD.PAT中或?qū)⑺鼏为毐4嬖谝粋文件中。將圖案單獨保存時,文件名必須與圖案名相同。在搞清楚圖案文件的各項參數(shù)之后,我們就可以自出新裁定義一些新的圖案了。下面我們就定義一個三角形的圖案,命名為TRIANGLE,并保存到TRIANGLE.PAT文件中。打開記事本,新建一個文件,輸入如下代碼(代碼最后一行加入一個換行):
*TRIANGLE,triangle pattern
0,0,0,1,1.732,1,-1
60,0,0,1,1.732,1,-1
120,1,0,1,1.732,1,-1
將文件保存為TRIANGLE.PAT,并放在support文件夾下。接下來,我們用TRIANGLE圖案來填充一個圓形進行驗證。首先啟動AutoCAD,繪制一個圓形,然后執(zhí)行“繪圖”菜單中的“圖案填充”命令,打開“邊界圖案填充”對話框。在“類型”列表中選擇“自定義”選項,激活“自定義圖案”列表框,單擊“自定義圖案”更表框右側(cè)的按鈕,彈出“填充圖案調(diào)色板”對話框,從中選擇TRIANGLE.PAT文件(如圖12所示),單擊“確定”按鈕關(guān)閉“填充圖案調(diào)色板”對話框。
在“邊界圖案填充”對話框中選擇合適的“比例”,單擊“拾取點”按鈕或者“選擇對象”按鈕。在繪圖區(qū)中選中圓形,按回車鍵返回“邊界圖案填充”對話框,單擊“確定”按鈕,完成圖案的填充,填充后的效果如圖13所示。
我們再來看一個實例,填充圖案的代碼如下:
*STAR,star*
0,-1,0,1.5,2.598,2,-1
60,-0.5,-0.886,1.5,2.598,2,-1
120,0.5,-0.866,1.5,2.598,2,-1
保存文件后按照前面的方法使用該圖案填充產(chǎn)生星形效果,如圖14所示。
將以上兩個例子作以對比,我們不難發(fā)現(xiàn):圖案填充的關(guān)鍵還在于靈活掌握線段的幾何關(guān)系,即使是簡單的線型,如果經(jīng)過精心的設(shè)計,也能夠產(chǎn)生各種不同的奇妙效果。
(完) |