朱維濤
(山西省第六地質(zhì)工程勘察院,山西運(yùn)城044000)
CASS成圖系統(tǒng)是南方測繪公司開發(fā)的基于AutoCAD平臺技術(shù)的地理信息系統(tǒng)前端數(shù)據(jù)處理系統(tǒng),廣泛應(yīng)用于數(shù)字化成圖、工程測量應(yīng)用、空間數(shù)據(jù)建庫等領(lǐng)域,其豐富的繪圖功能、強(qiáng)大的編輯功能和良好的用戶界面受到廣大測繪制圖人員的普遍歡迎。它自推出以來已有多個(gè)版本,目前市場上以CASS7.0版本居多。
CASS7.0較以前版本已有較大改進(jìn),但在日常實(shí)際工作中,其部分功能對于修改圖面或注記內(nèi)容仍有諸多不足之處,導(dǎo)致重復(fù)工作量加大,且其程序不開放,給具體工作帶來不便。本文通過筆者多年對CASS系統(tǒng)的使用經(jīng)驗(yàn),從作業(yè)實(shí)際出發(fā)探索并找出了一些關(guān)于CASS7.0的使用技巧,希望對CASS7.0的使用方面起到一定的借鑒作用。
由于CASS7.0系統(tǒng)默認(rèn)的快捷鍵有些不容易記憶或使用起來不夠方便,所以根據(jù)使用者的喜好來設(shè)置適合自己的快捷鍵就顯得十分必要。同時(shí),也會讓初學(xué)者更快、更熟練地掌握軟件的各項(xiàng)功能。具體操作如下:
找到軟件的安裝目錄,如“D:Program FilesCASS70SYSTEM”,在 SYSTEM文件夾下找到Acad.pgp文件,用記事本打開,如圖1所示。使用者可根據(jù)自己的喜好修改各命令的快捷鍵,也可對未設(shè)置快捷鍵的命令添加快捷鍵,格式為(qd,*erasevertex),即為去除復(fù)合線上的點(diǎn),定義為“qd”則有助于記憶。
圖1
通過自定義工具按鈕,來實(shí)現(xiàn)復(fù)雜操作的一鍵化,以減少工作量、提高工作效率。操作如下:
圖2
首先將命令窗口中的“用戶自定義的按鈕”拖放到繪圖區(qū)域創(chuàng)建自定義工具欄,或者拖放到現(xiàn)有工具欄添加按鈕;然后單擊添加的按鈕,當(dāng)前窗口會自動跳轉(zhuǎn)到“按鈕特性”選項(xiàng)卡(如圖3所示),該選項(xiàng)卡下顯示的正是剛剛添加的命令按鈕的特性(未設(shè)置關(guān)聯(lián)宏的情況下執(zhí)行該按鈕不做任何操作,即宏為^C^C);最后在選項(xiàng)卡內(nèi)給添加的按鈕設(shè)置名稱、說明,以及按鈕的圖像和關(guān)聯(lián)的宏。其中,最主要的是與此按鈕關(guān)聯(lián)的宏,它決定著這個(gè)按鈕所要執(zhí)行的操作,宏字段要結(jié)合CASS7.0系統(tǒng)的操作命令和執(zhí)行過程來設(shè)置。
圖3
如要設(shè)置“一鍵打開所有圖層”的按鈕,可以把該按鈕的關(guān)聯(lián)宏設(shè)置為^C^C-layer on*,如圖4所示,并設(shè)置該按鈕的名稱和說明,編輯按鈕圖案為“on”,以便在使用中能準(zhǔn)確地識別。
圖4
如要設(shè)置“一鍵關(guān)閉除當(dāng)前層以外的所有圖層”的按鈕,即將該按鈕的關(guān)聯(lián)宏設(shè)置為^C^C-layer off*,如圖5所示。
圖5
利用這種方法便可以把系統(tǒng)菜單欄下的一些常用命令制作成工具欄或按鈕的形式,使得應(yīng)用起來更加簡便,以提高工作效率。
可利用Visual LISP程序語言制作CASS7.0系統(tǒng)的外接程序模塊。在CASS7.0系統(tǒng)命令欄輸入appload命令加載外接LISP小程序,即可輕松實(shí)現(xiàn)想要的操作。
這種方法與前兩種相比比較專業(yè),筆者基于多年一線工作的實(shí)踐,通過逐步探索并翻閱一些有關(guān)LISP語言的書籍,編譯出幾個(gè)較為實(shí)用的小程序,以滿足日常工作的需要。
(1)程序設(shè)計(jì)實(shí)例
①坐標(biāo)檢查程序
第一類“VP”的語義主要表描摹,描摹的本義是照原樣描寫,這里具體指對人或事物的情狀、特性進(jìn)行客觀描述。例如:
在工程測量中經(jīng)常會做一些外業(yè)檢查點(diǎn),以檢驗(yàn)野外作業(yè)精度,這時(shí)候如果外業(yè)檢查點(diǎn)和原測點(diǎn)號無法很好地對應(yīng),就很難通過Excel表來計(jì)算點(diǎn)位誤差。因此,需要將檢查點(diǎn)展到圖上去查找對應(yīng)關(guān)系。這個(gè)程序就是通過點(diǎn)取檢查點(diǎn)和原測點(diǎn)來計(jì)算點(diǎn)位誤差并輸出成*.txt文件。源程序如下
將該源程序保存為*.lsp文件,即包含LISP程序代碼的ASCII文本文件。在CASS7.0中通過appload命令將其正確加載后,可執(zhí)行“ZBJC”命令,并根據(jù)命令欄提示,點(diǎn)取相應(yīng)的點(diǎn)來實(shí)現(xiàn)操作。
②查找圖形內(nèi)的指定文字
在內(nèi)業(yè)作圖中,如果圖內(nèi)內(nèi)容壓蓋嚴(yán)重,往往一時(shí)很難找到想要的內(nèi)容,而利用此程序便可實(shí)現(xiàn)輕松查找。源程序如下
(strcat"已找完,沒有發(fā)現(xiàn)你要的=="str"==,請使用其他方法!")
正確加載后執(zhí)行“FD”命令即可。
③注記序號
在內(nèi)業(yè)作圖中經(jīng)常會遇到需要注記斷面或其他線物的連續(xù)序號。利用該程序便可輕松實(shí)現(xiàn)。源程序如下
正確加載后執(zhí)行“ZXH”命令即可。
(2)程序的加載
程序的加載除了前文中提到的在CASS環(huán)境下鍵入appload命令來進(jìn)行加載外,也可以通過編譯AutoCAD系統(tǒng)文件的方法進(jìn)行加載。方法是:首先關(guān)閉CASS7.0窗口,打開AutoCAD安裝目錄下的Support文件夾,找到并打開acad.mnl文件;然后在文件的最后將所要加載的一個(gè)或多個(gè)源程序復(fù)制過來存盤;最后關(guān)閉該文件,重啟CASS7.0,便可運(yùn)行這些源程序。軟件重裝后需重新加載。
(3)LISP源程序的編譯與加密
以ASCII文本文件保存的源程序(擴(kuò)展名為*.lsp)是一種開放的源代碼,用記事本和寫字板都可以打開并修改,但有些專業(yè)級的作者不想自己的作品供別人分享,這時(shí)可以利用CAD自帶的Visual LISP編輯器對LISP源程序進(jìn)行編譯輸出,生成一個(gè)編譯過的應(yīng)用程序,擴(kuò)展名為*.vlx,以及一個(gè)或多個(gè)單個(gè)LISP程序的二進(jìn)制編譯文件,擴(kuò)展名為*.fas。這兩種文件是不能被打開和修改的,只能在CAD環(huán)境下加載使用,這樣便可有效地防止源代碼的外泄和盜用。編譯過程中系統(tǒng)還會同時(shí)創(chuàng)建一個(gè)應(yīng)用程序生成文件,擴(kuò)展名為*.prv,這個(gè)文件將用于以后對應(yīng)用程序的重新編譯。
具體做法是:在CASS命令欄輸入vlisp或vlide打開Visual LISP編輯器,點(diǎn)擊文件菜單下的“生成應(yīng)用程序”→“新建應(yīng)用程序向?qū)А?,根?jù)提示完成操作。編譯后的應(yīng)用程序只能使用appload命令來加載使用。
AutoCAD已廣泛應(yīng)用于社會生產(chǎn)的各行各業(yè),而以CAD為平臺所開發(fā)的南方CASS成圖系統(tǒng)更是受到了廣大測繪工作者的青睞,尤其是基于Visual LISP的內(nèi)嵌式程序語言可直接在CASS環(huán)境下調(diào)用,不需要任何轉(zhuǎn)換,方便易學(xué),使普通的使用者只要稍加研究就可以制作出自己所需要的功能按鈕和命令,極大地激發(fā)了工作熱情和創(chuàng)作欲望。根據(jù)實(shí)際需要隨時(shí)編制一些方便自己的實(shí)用程序,可大大減輕日常處理圖形的繁瑣步驟,對于復(fù)雜的工作也能輕松面對,真正實(shí)現(xiàn)操作一鍵化,起到事半功倍的效果,減小了勞動強(qiáng)度,提高了工作效率。
[1] 劉宇軒,馬春林,程俊,等.數(shù)字化地形地籍成圖系統(tǒng)CASS7.0用戶手冊[M].廣州:南方測繪儀器有限公司,2006.
[2] 吳永進(jìn),林美櫻.Auto LISP﹠DCL基礎(chǔ)篇[M].北京:中國鐵道出版社,2003.