薛衛(wèi)沖
(1.南京大學(xué)地球科學(xué)與工程學(xué)院,江蘇 南京 210093;2.江蘇省有色金屬華東地質(zhì)勘查局,江蘇南京210007)
Excel與CAD結(jié)合在地質(zhì)制圖工作中的應(yīng)用
薛衛(wèi)沖1,2
(1.南京大學(xué)地球科學(xué)與工程學(xué)院,江蘇 南京 210093;2.江蘇省有色金屬華東地質(zhì)勘查局,江蘇南京210007)
采用CAD軟件繪制地質(zhì)圖件時(shí),常遇到不斷重復(fù)簡(jiǎn)單的繪制命令,從而使得制圖工作沉悶、低效、多錯(cuò)。介紹了利用Excel的編制函數(shù)功能與CAD命令窗口相結(jié)合的原理、方法及常用手段,通過實(shí)例來說明如何實(shí)現(xiàn)地質(zhì)制圖過程的快速、準(zhǔn)確與高效。
Excel;CAD;地質(zhì);制圖
CAD與Excel的信息互相導(dǎo)入,在工作中起到意想不到的效果。可以開發(fā)AutoCAD信息自動(dòng)導(dǎo)入Excel程序并在工程中得到應(yīng)用(劉百來等,2010);CAD具有強(qiáng)大的制圖功能,但涉及到用命令來制作表格及線就相當(dāng)繁瑣,如果能將Excel的制表功能應(yīng)用到CAD中,將大大提高制作效率及效果(李峰博等,2010)。
較多同行已經(jīng)對(duì)CAD、Excel等軟件結(jié)合運(yùn)用作了探索,并運(yùn)用到地質(zhì)制圖領(lǐng)域中,包括水文工作(范長(zhǎng)玉等,2010)、鉆孔柱狀圖繪制(馬江平等,2005)等。
Excel輔助CAD,可利用數(shù)據(jù)共享制作勘查圖件,可實(shí)現(xiàn)真正意義上的計(jì)算機(jī)輔助設(shè)計(jì)(孫淑賢等,2007)。
Excel與CAD結(jié)合能夠?yàn)楣ぷ魈峁┍憷?,減少重復(fù)勞動(dòng),提高準(zhǔn)確率。其原理是讓Excel編制函數(shù),并將函數(shù)的計(jì)算結(jié)果顯示成能讓CAD識(shí)別且可執(zhí)行的命令。由于Excel具有復(fù)制公式的功能,因此可以用Excel來做那些重復(fù)又簡(jiǎn)單的工作。
在CAD中輸入坐標(biāo)的命令是用逗號(hào)分隔的2個(gè)數(shù)值實(shí)現(xiàn)的,用Excel的Concatenate命令就很容易實(shí)現(xiàn)這一鏈接。
用GPS記錄測(cè)區(qū)內(nèi)公路的1 883個(gè)坐標(biāo)點(diǎn)的航跡,需先將公路繪制到地質(zhì)平面圖上。如表1所示,將輸入多段線命令(pl)、坐標(biāo)值(X、Y)采用“concatenate()”命令編制函數(shù)(D列)。
編制的Excel函數(shù)。
IF(ISTEXT(A1),CONCATENATE("pl",C2,",",B2),IF(A3="",CONCATENATE(C2,",",B2,""),CONCATENATE(C2,",",B2))),該函數(shù)返回的值為:pl 428255,2807249……。這個(gè)值CAD能識(shí)別并可執(zhí)行。
將D列復(fù)制并粘貼到CAD命令行中就可繪制GPS航跡了。
執(zhí)行過程解釋:輸入命令pl—空格(相當(dāng)于回車)—輸入坐標(biāo)(428255,3807249)—輸入下一坐標(biāo)(428245,2807269)……。
“IF”函數(shù)的作用是讓第一個(gè)點(diǎn)號(hào)輸入并執(zhí)行“pl”命令和輸完最后一個(gè)坐標(biāo)后,CAD以空格鍵形式結(jié)束繪制多段線命令。這是一個(gè)一步到位的命令,如果簡(jiǎn)化一些,在D列編制公式:“concatenate(C2,",",B2)”即可,復(fù)制 D 列,在 CAD 命令行中輸入“pl”命令,然后粘貼D列函數(shù)(畫航跡函數(shù)),最后空格鍵結(jié)束即可。
1 883個(gè)坐標(biāo)點(diǎn)的多段線,在彈指一揮間繪成,無需檢查,效率可見一斑。
圖1 GPS航跡繪制函數(shù)編制示意圖
平面圖上鉆孔孔號(hào)、地質(zhì)點(diǎn)號(hào),剖面圖上的地質(zhì)點(diǎn)號(hào)、采樣樣號(hào)等,通常的方法是根據(jù)坐標(biāo)復(fù)制,然后再逐個(gè)修改,同樣具有重復(fù)、低效、易出錯(cuò)的缺陷。
采用“-t”命令,結(jié)合其坐標(biāo),可以將所需要的文字輸入到恰當(dāng)?shù)奈恢谩?/p>
圖2是實(shí)測(cè)剖面地質(zhì)點(diǎn)的坐標(biāo),現(xiàn)將點(diǎn)標(biāo)記、點(diǎn)號(hào)作到平面圖上,編制Excel函數(shù):CONCATENATE(CHAR(10)," - t",C2 - 12,",",B2+1,"H 3 J BL r 62 W 0",A2,CHAR(10),CHAR(10)),該函數(shù)返回的值是:-t 329941,4686918 H 3 J BL r 62 W 0 PA53……。
圖2 平面圖上文本標(biāo)注函數(shù)編制示意圖
將F列復(fù)制并粘貼到CAD命令行中,即可完成點(diǎn)號(hào)繪制。
執(zhí)行過程解釋:輸入多行文本命令“-t”—輸入CAD要求的文本位置坐標(biāo)(329941,4686918)(在點(diǎn)號(hào)的左上方)—輸入文本字高3—對(duì)正方式BL(左下)—旋轉(zhuǎn)角度62°—字寬0—輸入文本內(nèi)容PA53(引用單元格A3)—回車(CHAR(10))以便確認(rèn)輸入的文本PA53(確認(rèn)文本輸入須用回車鍵(CHAR(10)來應(yīng)答,不可用空格鍵應(yīng)答)—回車(CHAR(10))結(jié)束命令。
由于結(jié)束命令的那個(gè)回車(CHAR(10)),在Excel單元格中隱藏了制表符"",當(dāng)將其粘貼到CAD命令行中,就會(huì)顯現(xiàn)出來,其前半個(gè)“"”將所需要“-t 329941,4686918 H 3 J BL r 62 W 0 PA53”命令變成了“"-t 329941,4686918 H 3 J BL r 62 W 0 PA53”命令,這是CAD無法識(shí)別的命令。為此,在“-t”命令前增加CHAR(10)命令,其效果是對(duì)前半個(gè)“"”加了1個(gè)回車,變成一個(gè)CAD的未知命令,以便CAD能繼續(xù)執(zhí)行其后續(xù)的“-t”命令。而后半個(gè)“"”與換行符(相當(dāng)于回車)結(jié)合亦構(gòu)成一個(gè)CAD未知命令,CAD繼續(xù)執(zhí)行其下一行的命令。
在作直線時(shí),CAD可執(zhí)行“@3<60”的命令,即在已知點(diǎn)上作一長(zhǎng)為3、角度為60°的直線。這一命令與用戶坐標(biāo)系結(jié)合,在制圖時(shí)相當(dāng)有用。
圖3是某一鉆孔部分采樣數(shù)據(jù),要將其采樣位置畫到剖面圖上,可編制Excel函數(shù):CONCATENATE("l",B3,",",0,"@1 <90"),該函數(shù)返回的值為:L 0,0@1<90……。將E列復(fù)制并粘貼到CAD命令行中即可繪制樣軌(還需要將鉆孔線偏移1個(gè)單位)。
圖3 繪制采樣位置函數(shù)編制示意圖
執(zhí)行過程解釋:輸入畫線命令“L”—空格—輸入起點(diǎn)坐標(biāo)(0,0)—輸入線長(zhǎng)為1、角度90°的直線—空格—執(zhí)行下一行命令……。
該函數(shù)須與用戶坐標(biāo)結(jié)合,在復(fù)制E列函數(shù)到CAD命令行之前,先建立用戶自定義坐標(biāo)系:以鉆孔彎曲度測(cè)量區(qū)間上端點(diǎn)為坐標(biāo)原點(diǎn),以鉆孔軌跡為X軸,方向向下。然后粘貼上述函數(shù)到CAD命令行讓其執(zhí)行即可。
筆者畫鉆孔、坑道采樣位置時(shí),常需要畫樣軌并間隔充填黑色,“-bhatch”是CAD以命令行形式執(zhí)行填充命令。
圖4 樣軌填充函數(shù)編制示意圖
編制如下函數(shù)。
IF(ISTEXT(B2),CONCATENATE(" -bhatch p s",(B3+C3)/2,",",0.5,"",""),IF(MOD(ROW(),2)=0,"",CONCATENATE("",(B3+C3)/2,",",0.5,"","")))。
該函數(shù)返回CAD能識(shí)別的值為:-bhatch p s 0.815,0.5……。執(zhí)行過程解釋:根據(jù)“- bhatch”執(zhí)行特點(diǎn),需要輸入的參數(shù)為特性p,填充類型s(solid),輸入拾取點(diǎn)坐標(biāo),確認(rèn)填充范圍,執(zhí)行填充,重復(fù)“-bhatch”,輸入拾取點(diǎn)坐標(biāo)……。由于填充是相間進(jìn)行的,所以需要增加IF(MOD(ROW(),2)=0,"",……的判別函數(shù),以便相間填充。
當(dāng)掌握了上述的基本技能后,可以舉一反三,觸類旁通,應(yīng)用到諸多的地質(zhì)圖件制作過程中。
以制作實(shí)測(cè)地質(zhì)剖面圖為例。從繪制地形線、地質(zhì)界線、測(cè)點(diǎn)點(diǎn)號(hào)標(biāo)注、巖性花紋填充等幾方面,分別說明Excel與CAD結(jié)合,在曲線繪制(平面坐標(biāo)批量輸入)、相對(duì)坐標(biāo)輸入、文本輸入以及圖案填充的應(yīng)用。
在戈壁灘地區(qū),由于接收衛(wèi)星信號(hào)好,地質(zhì)剖面測(cè)量可采用手持式GPS進(jìn)行定位實(shí)測(cè)地質(zhì)剖面數(shù)據(jù)。
對(duì)表1中數(shù)據(jù)進(jìn)行計(jì)算處理,算出導(dǎo)線總方位角(213.5°)、接觸面視傾角、巖層視傾角、各段導(dǎo)線在剖面方向投影長(zhǎng)度。
參見圖5。
Excel函數(shù):IF(ISTEXT(K1),CONCATENATE("pl",K2,",",L2),IF(K3="",CONCATENATE(K2,",",L2,""),CONCATENATE(K2,",",L2)))。
表1 實(shí)測(cè)地質(zhì)剖面原始數(shù)據(jù)
圖5 剖面地形線繪制函數(shù)編制示意圖
將地形線圖層置為當(dāng)前圖層,并將圖5中M列(作剖面地形線列)粘貼到CAD命令行,即可繪制出剖面地形線。
參見圖6。
圖6 地質(zhì)界線繪制函數(shù)編制示意圖
Excel函數(shù)。
IF(G2="",CHAR(10),IF(F1 < >F2,CONCATENATE("l",K2,",",L2,"@25 <",IF(ABS(G2 -213.38) <90,H2*( -1),H2+180),"")))。
將地質(zhì)界線圖層置為當(dāng)前圖層,并將圖6中N列(作分層線)粘貼到CAD命令行中即可。
參見圖7。Excel函數(shù)。
CONCATENATE(CHAR(10),"l",K2,",",L2+10,"@20 <90",""," -t",K2,",",L2+35,"h 3 j bl w 0","No.",A2,CHAR(10),CHAR(10))。
將地質(zhì)點(diǎn)號(hào)圖層置為當(dāng)前圖層,并將圖7中O列(測(cè)點(diǎn)點(diǎn)號(hào)標(biāo)注)粘貼到CAD命令行中即可。
參見圖8。
圖7 地質(zhì)點(diǎn)編號(hào)標(biāo)注函數(shù)編制示意圖
圖8 巖性花紋填充函數(shù)編制示意圖
Excel函數(shù)。
IF(ISTEXT(D2),CONCATENATE(" -bhatch p",D2,"",E2,"",IF(I2="",0,IF(ABS(I2 -213.48) <90,- J2,J2+180)),"",(K2+K3)/2,",",(L2+L3)/2 -5,""),"")。
所需巖性花紋文件(后輟名為“.pat”)應(yīng)在填充前復(fù)制至CAD安裝目錄下的Suport文件夾內(nèi),并將對(duì)應(yīng)的巖性花紋代號(hào)填入圖8的D列中。圖案的比例尺、巖層視傾角等參數(shù)也應(yīng)預(yù)先填入相應(yīng)欄目?jī)?nèi)。同時(shí),需要將地形線往下偏移(偏移值視剖面比例尺而定),并將上下地形線端點(diǎn)連接,以便以“拾取點(diǎn)”的方式填充。
將巖性花紋圖層置為當(dāng)前圖層,將所要填充的范圍置于可見視域內(nèi),并將圖8中P(巖性花紋填充)列粘貼到CAD命令行中即可。填充完成后,將先前偏移的地形線及兩端的連接線刪除,最終成圖如圖9。
雖然Excel是最常用的工具,且有強(qiáng)大的編制函數(shù)與計(jì)算功能,CAD也是世界上最成熟的功能強(qiáng)大的制圖軟件,但大部分同行還不能熟練地將兩者結(jié)合起來,在日常制圖中花費(fèi)了較多的時(shí)間與精力。筆者介紹了最常見的圖件制作技巧,希望能起到拋磚引玉的作用,并得到同行的發(fā)揚(yáng)光大。
圖9 局部實(shí)測(cè)地質(zhì)剖面圖(未修飾)
范長(zhǎng)玉,徐菲.2010.利用Excel在AutoCAD中繪制橫斷面的實(shí)踐應(yīng)用[J].吉林水利,(5):57-72.
李峰博,張朝暉.2010.Excel軟件在AutoCAD繪圖中的輔助應(yīng)用[J].楊凌職業(yè)技術(shù)學(xué)院學(xué)報(bào),9(4):62-64.
劉百來,涂圣武.2010.工程中AutoCAD信息自動(dòng)導(dǎo)入Excel的程序開發(fā)與應(yīng)用[J].科技創(chuàng)新導(dǎo)報(bào),(28):17.
馬江平,王志宏.2005.基于AutoCAD的預(yù)想鉆孔生成及其柱狀圖繪制[J].露天采礦技術(shù),(6):17-20.
孫淑賢,李光明,張貴麗.2007.AutoCAD制作勘查線剖面圖中的數(shù)據(jù)共享及圖形格式交換[J].山東國(guó)土資源,(9):18 -20.
Application of combination of Excel and CAD in geological cartography
XUE Wei-chong1,2
(1.School of Earth Sciences and Engineering,Nanjing University,Nanjing 210093,China;2.East China Geological Exploration Bureau of Nonferrous Metals,Jiangsu Province,Nanjing 210007,China)
When CAD software was applied in plotting geological charts,simple repeated plotting commands were often confronted with which made a lower working efficiency and inaccuracy.The author introduced programming by Excel and how to draw formula curves and curved faces accurately in geology by utilizing CAD and Excel soft wares,which helped to improve the working efficiency.
Excel;CAD;Geology;Chart plotting
P283.7
A
1674-3636(2011)03-0275-05
10.3969/j.issn.1674-3636.2011.03.275
2011-06-02;編輯:陸李萍
薛衛(wèi)沖(1964—),男,高級(jí)工程師,長(zhǎng)期從事地質(zhì)勘查工作,E-mail:xue805@126.com