劉明輝
(大同市勘察測(cè)繪院,山西大同 037006)
目前AutoCAD軟件在測(cè)繪生產(chǎn)中應(yīng)用比較廣泛,大多數(shù)的測(cè)繪產(chǎn)品均以.DWG的格式提交。但是AutoCAD自帶的符號(hào)與測(cè)繪地形圖圖式差別很大。為了有效的提高工作效率,建立一套符合規(guī)范的地形圖符號(hào)庫(kù)顯得十分必要。AutoCAD提供了強(qiáng)大的圖形編輯功能和多種方式的二次開(kāi)發(fā)及用戶定制,我們可以據(jù)此進(jìn)行符號(hào)庫(kù)的制作,使地形圖的繪制更加方便、快捷、規(guī)范。
開(kāi)發(fā)地形圖符號(hào)庫(kù)主要有兩個(gè)目的:
1)將地形圖符號(hào)以數(shù)字圖集的形式存儲(chǔ)在計(jì)算機(jī)系統(tǒng)中,便于用戶更好的使用;
2)使地形圖符號(hào)符合國(guó)家相關(guān)圖式規(guī)范,使數(shù)據(jù)規(guī)范化,方便數(shù)據(jù)的管理與交換。
符號(hào)庫(kù)的開(kāi)發(fā)必須遵循以下原則:
1)嚴(yán)格保證符號(hào)庫(kù)圖式符合國(guó)家標(biāo)準(zhǔn)的地形圖圖式;
2)地物符號(hào)的整體性:符號(hào)一體,屬性關(guān)聯(lián);
3)方便制圖人員操作,盡可能提高工作效率;
4)數(shù)據(jù)文件轉(zhuǎn)換方便,圖形信息無(wú)損失。
綜合分析地形圖構(gòu)成各要素,可以將地形圖符號(hào)分為點(diǎn)狀、線狀、面狀符號(hào)三類,見(jiàn)圖1。
圖1 符號(hào)庫(kù)結(jié)構(gòu)圖
點(diǎn)狀符號(hào)指實(shí)際物體的投影輪廓較小,如按比例縮小在圖上無(wú)法清晰表達(dá),比如燈桿、路標(biāo)、路邊電話亭等等。因此,用一個(gè)點(diǎn)的坐標(biāo)來(lái)表征其空間信息。
由于點(diǎn)狀符號(hào)形狀固定,不隨位置發(fā)生變化。這一特點(diǎn)與AutoCAD中塊的特性一致。因此在AutoCAD中,可以用自定義圖塊的方法來(lái)制作點(diǎn)狀符號(hào)。
對(duì)于點(diǎn)狀符號(hào),其定位點(diǎn)要準(zhǔn)確,與物體的實(shí)際位置一致。且符號(hào)要與規(guī)范圖式的尺寸、顏色相一致。地形圖圖式中對(duì)于符號(hào)的定位點(diǎn)有明確規(guī)定,因此制作符號(hào)時(shí),圖塊的插入點(diǎn)必須與規(guī)范要求的定位點(diǎn)相一致。符號(hào)大小按規(guī)范要求的幾何尺寸1∶1繪制,使用時(shí)按相應(yīng)的比例尺設(shè)定圖塊的比例因子。
線狀符號(hào)分為簡(jiǎn)單線狀符號(hào),如道路;復(fù)雜線狀符號(hào),如地類界、柵欄、鐵路、電力線、斜坡等。任何線狀符號(hào)都可以看作是簡(jiǎn)單線狀符號(hào)和點(diǎn)狀符號(hào)之間的組合。
AutoCAD中,在一個(gè)或多個(gè)擴(kuò)展名為.lin的線型定義文件中定義了線型。創(chuàng)建線型后,通過(guò)命令加載該線型,就可以在繪圖中使用。
簡(jiǎn)單線型是點(diǎn)、橫線、空格按一定規(guī)律重復(fù)出現(xiàn)形成的圖案;復(fù)雜線型是點(diǎn)、橫線、空格、“形”“文字”組成的圖案。
1.4.1 簡(jiǎn)單線型的定制
在線型定義文件中使用兩行文字定義一種線型:第一行包括線型名稱和可選說(shuō)明,線型名稱以星號(hào)(*)開(kāi)頭;第二行是定義實(shí)際線型圖案的代碼,必須以字母A開(kāi)頭,其后是圖案描述代碼,定義提筆長(zhǎng)度(空移),落筆長(zhǎng)度(劃線)和點(diǎn)。線型定義格式為:
簡(jiǎn)單線型定義實(shí)例:
1.4.2 復(fù)雜線型的定制
點(diǎn)、橫線、空格以及嵌入的形和文字組合成為復(fù)雜線型。
線型中可以嵌入字體中的字符。格式如下:
這種格式被作為描述添加到簡(jiǎn)單線型,如鐵絲網(wǎng):
復(fù)雜線型也可以嵌入形(保存在形文件中)。與簡(jiǎn)單線型一樣,指定端點(diǎn)后可以動(dòng)態(tài)的繪制復(fù)雜線型。線型說(shuō)明中的形對(duì)象描述語(yǔ)法如下:
[shapename,shxfilename,transform]
其中transform是可選的,可以是R,A,S,X,Y五項(xiàng)的任意組合。R表示相對(duì)旋轉(zhuǎn);A表示絕對(duì)旋轉(zhuǎn);S表示比例;X表示X偏移;Y表示Y偏移。旋轉(zhuǎn)單位為度,其他單位為圖形單位。
地形圖圖式中,陡坎、地類界、加固斜坡等都屬于復(fù)雜線型。下邊以此為例說(shuō)明如何在線型中嵌入形。
*陡坎,陡坎
A,2,[DK,DTKC.shx],2
*地類界,地類界
A,0.[CC,DTKC.shx,S=0.3],-1.6
*加固斜坡,加固斜坡
A,2,[XP,DTKC.shx],2,[DK,DTKC.shx],0,[CC,DTKC.shx,S=0.01,Y=1],2
有關(guān)形的定義方法詳見(jiàn)2.6小節(jié)。
地形圖中的面狀符號(hào)填充大致可以分為顏色填充、斜線或交叉線填充、品字形或井字形填充、無(wú)規(guī)律配置符號(hào)四類。除無(wú)規(guī)律配置符號(hào)外,其余都可以通過(guò)AutoCAD中自定義填充圖案功能來(lái)實(shí)現(xiàn)。其中顏色,斜線或交叉線填充可以使用AutoCAD提供的預(yù)定義填充圖案。有的符號(hào)則需要自定義圖案來(lái)實(shí)現(xiàn)。填充圖案文件格式為.pat。格式如下:
*pattern-name,description
angle,x-origin,y-origin,delta-x,delta-y,dash-1,dash-2,…
description為所定義填充圖案的定義和說(shuō)明,angle為線族坐標(biāo)系X軸與水平方向的傾角,x-origin,y-origin為同一線族內(nèi)的線間X,Y方向偏移量。
填充圖案定義遵循以下規(guī)則:
1)圖案定義中每一行最多包含80個(gè)字符,可以包含字母,數(shù)字和以下特殊字符:下劃線(_)、連字號(hào)(-)、美元符號(hào)($)。但是,圖案定義必須以數(shù)字或字母開(kāi)頭;
2)AutoCAD忽略分號(hào)右側(cè)的空行和文字;
3)每條圖案直線被認(rèn)為是直線族的第一個(gè)成員,是通過(guò)應(yīng)用兩個(gè)方向上的偏移增量生成無(wú)數(shù)平行線來(lái)創(chuàng)建的;
4)增量x的值表示直線族成員在直線方向上的位移(僅適用于虛線);
5)增量y的值表示直線族成員之間的間距;
6)直線被認(rèn)為是無(wú)限延伸的。虛線圖案疊加于直線之上。
例如,草地的填充,其定義為:
花圃的填充定義如下:
形是一種能用直線、圓弧和圓定義的特殊實(shí)體,它可以很方便的被繪入圖形中,并按照需要制定比例系數(shù)和旋轉(zhuǎn)角度,以獲得不同的位置和大小。它在AutoCAD中占用的空間小,繪制速度快。因此在進(jìn)行二次開(kāi)發(fā)時(shí)一般將常用的符號(hào)、字體等定義為形,這樣既可以節(jié)省存儲(chǔ)空間,也可以為多個(gè)作業(yè)所公用。Auto-CAD字體和形文件(.SHX)通過(guò)形定義文件(.SHP)編譯。形定義文件可用文本編輯或能將文件存為格式的字處理器創(chuàng)建或編輯。
形定義文件的每一行最多可包含128個(gè)字符,超過(guò)此長(zhǎng)度的行不能編譯。由于AutoCAD忽略空行和分號(hào)右側(cè)的文字,所以可以在形定義文件中嵌入注釋。每個(gè)形說(shuō)明都有一個(gè)標(biāo)題行(格式如下),以及一行或多行定義字節(jié)。這些定義字節(jié)之間用逗號(hào)分隔,最后以0結(jié)束。
簡(jiǎn)單的形定義是在一個(gè)定義字節(jié)(一個(gè)specbyte字段)中包含的編碼。每個(gè)矢量的長(zhǎng)度和方向代碼是一個(gè)三字符的字符串。在代碼字符串中,第一個(gè)字符必須為0,第二個(gè)字符指定矢量的長(zhǎng)度。矢量的長(zhǎng)度受到比例因子的影響,矢量長(zhǎng)度和比例因子的積是實(shí)際的距離的值。第三個(gè)字符指定矢量的方向。在使用時(shí),有16個(gè)可用的標(biāo)準(zhǔn)方向,方向編碼如圖2所示。
圖2 形方向編碼
為定義不同對(duì)象,如直線、圓弧以及描述各種狀態(tài)如抬筆、落筆、形定義結(jié)束等,AutoCAD設(shè)定了一些特殊描述碼,其含義如下:
0——形定義結(jié)束。
1與2——落筆與抬筆。其中1為落筆開(kāi)始畫(huà),2為抬筆空走。
3與4——大小控制,其中3為用下一字節(jié)除矢量長(zhǎng)度,4為用下一字節(jié)乘矢量長(zhǎng)度。
5與6——堆棧推進(jìn)(push)與彈出(pop),其中堆棧深度不能超過(guò)4。
7——為子形(subshape reference),可把以前定義的形用形編號(hào)調(diào)用。
8與9——X,Y位移(-128~127之間)。如:8,(-9,4)即 X往左9個(gè)單位,Y往右4個(gè)單位。
10或00A——圓定義(或octant arc)。由下兩個(gè)字節(jié)定義八弧段。
00B——由下五個(gè)字節(jié)定義的小弧段。
00C——由X-Y位移和凸度定義的弧。
00D——多個(gè)指定凸度的弧。
由于地形圖圖式中規(guī)定了地形圖符號(hào)的定位點(diǎn)和定位線,所以必須考慮圖符的中心問(wèn)題。
在地形圖圖式中規(guī)定:
1)幾何圖形符號(hào)(圓形、矩形等)在其幾何中心;
2)寬底符號(hào)(如煙囪、水塔等)在底線中心;
3)底部為直角形的符號(hào)(如風(fēng)車(chē)、路標(biāo)等)在直角的頂點(diǎn);
4)幾種幾何圖形組成的符號(hào)(如氣象站等)在其下方的中心點(diǎn)或交叉點(diǎn);
5)下方?jīng)]有底線的符號(hào)(如亭、山洞等)應(yīng)在下方兩端點(diǎn)間的中間;
6)線狀符號(hào)(如堤、河等)在其符號(hào)的中心線。
例如,亭子和路標(biāo)形定義如下(如圖3所示):
*2,23,TZ;;亭子
003,8,002,038,001,064,038,009,(6,6),(6,- 6),(- 9,0),(0,0),002,060.001,06C,002,038,0
*4,17,LB;;路標(biāo)
003,8,040,002,048,001,0C4,008,(5,3),002,06C,001,008,(5,3),0
圖3 亭子和路標(biāo)的形
使用linetype命令可以加載自定義線型。
使用hatch命令加載自定義填充圖案。
使用load命令加載形文件。
本文介紹了在AutoCAD中制作地形圖符號(hào)庫(kù)的基本方法。結(jié)合相關(guān)圖式規(guī)范,著重介紹了點(diǎn)、線、面各種不同類型符號(hào)的特點(diǎn)和制作方法。通過(guò)實(shí)踐證明,建立一套符合圖式規(guī)范的符號(hào)塊,可以有效的提高工作效率。