您當前的位置:主頁>>AutoCAD>>AutoCAD二次開發(fā) 生活的美,來源于你對生活的熱愛;友情的純真,來源于你對朋友真誠的相待。
           淺談結(jié)構(gòu)專業(yè)對AutoCAD的二次開發(fā)

    摘要:在工程設(shè)計各專業(yè)中,AutoCAD以其強大的圖形支撐能力和開放的結(jié)構(gòu)體系,無可爭辯地成為CAD市場的龍頭。隨著CAD制圖的普及,在AutoCAD上開發(fā)出的各專業(yè)軟件也越來越多,建筑、水暖、設(shè)備、機械、電氣等專業(yè)都有自己的CAD軟件,而結(jié)構(gòu)專業(yè)計算分析軟件雖然較多,基于AutoCAD的繪圖軟件卻較少。下面筆者就自己的開發(fā)經(jīng)驗,談一點感
受。
    關(guān)鍵詞:CAD制圖 計算機 結(jié)構(gòu)設(shè)計

  一、菜 單

  專業(yè) 的菜單一定要有鮮明的專業(yè)特點。很多 只是在AutoCAD的原來菜單后加上一個菜單項或者將AutoCAD的屏幕菜單(SCREEN MENU)替換掉。這類 盡量對AutoCAD不做修改,避免許多熟悉AutoCAD的用戶產(chǎn)生不習慣的感覺。其實,AutoCAD只是提供了一個基本繪圖環(huán)境,它涉及各行各業(yè),沒有任何偏重,由于沒有較好的二次開發(fā) ,廣大用戶才不得不去適應(yīng)AutoCAD的菜單。就結(jié)構(gòu)專業(yè)而言,其菜單項只有文件、設(shè)定兩項以及一些繪圖、修改命令經(jīng)常用到,大部分菜單項平時都用不上。對AutoCAD菜單進行重新組合,增加一些實用工具菜單項,讓菜單具有鮮明的專業(yè)特點,這樣才能讓設(shè)計人員繪圖時得心應(yīng)手,擁有一個良好的設(shè)計環(huán)境。AutoCAD自12版起,增加了多級菜單,使得菜單的設(shè)計更為豐富。但筆者認為,下拉菜單的級數(shù)不應(yīng)太多,最多不宜超過兩級。

  二、圖 庫

  結(jié)構(gòu)專業(yè)需要大量的節(jié)點詳圖,如框架、剪力墻構(gòu)造節(jié)點,拉墻筋大樣,基礎(chǔ)詳圖等等。每個結(jié)構(gòu)師手頭都會保留或多或少這樣的節(jié)點圖。直接調(diào)入或者調(diào)入后稍加修改,就能運用于不同的項目設(shè)計,這樣可以大大減輕結(jié)構(gòu)師的負擔。如果沒有專業(yè)圖庫,制圖時要用到某個大樣時,結(jié)構(gòu)師只能憑著記憶打開其它圖形文件去搜尋,然后用BLOCK命令制作成圖塊,再用INSERT命令插入本圖。而且,不同的項目設(shè)計,不同的圖形文件,可能會有不同的輸出比例,弄不清比例會使得插入的圖塊大小失調(diào),嚴重影響圖面質(zhì)量。因此,建立圖庫是二次開發(fā)的重要部分,同時圖庫的內(nèi)容應(yīng)越豐富越好。建立圖庫并不等同于簡單提供各類圖塊。規(guī)劃好圖塊的大小、統(tǒng)一圖塊的比例,讓用戶能順利地使用、維護和擴充,都是開發(fā)時應(yīng)注意的問題。

  三、應(yīng)用程序

  作為最強大的圖形支撐系統(tǒng),AutoCAD提供了豐富的圖形編輯命令,但對于專業(yè)人員,還遠遠不夠。舉例來說:在結(jié)構(gòu)平面圖中畫一根鋼筋,一級鋼筋的彎鉤是很難畫的,畫起來不但很費時間,而且掌握不好要么太大,要么太小,影響圖面質(zhì)量。筆者經(jīng)?吹接行┰O(shè)計人員將一根“寶貴”的鋼筋拷來移去。又如:要把所有的字高由2.5mm改為3mm,用CHANGE命令一個一個去修改,將使人無法忍受。其實用程序?qū)崿F(xiàn)這些功能是很簡單的。其它如批量修改文本的高度、字型、寬高比,炸開、連接文本,將兩根直線連接為一根直線,給一根PLINE線加上鋼筋彎頭,畫鋼筋點、箍筋等等,都可以用程序?qū)崿F(xiàn)。編寫這些實用程序,可以用簡單的操作完成許多復雜的工序,能為結(jié)構(gòu)設(shè)計人員完成許多瑣碎的工作,從而盡量將設(shè)計人員解放出來,使他們有更多的時間去進行創(chuàng)造性勞動。AutoCAD提供的應(yīng)用程序開發(fā)工具有AutoLISP和ADS(AutoCAD Development System)。AutoLISP程序設(shè)計易于學習掌握,適合于編寫短小精悍的程序,其缺點是程序保密性差,而且是前綴表示法,不符合習慣。用ADS則必須有C語言編程基礎(chǔ),使用C語言編寫基于ADS的應(yīng)用程序運行速度快,保密性也好,適合于大型程序。筆者認為,一般的程序開發(fā)用AutoLISP已經(jīng)足夠,不必用ADS。

  四、漢字輸入

  工程制圖中,漢字輸入是不可避免的。漢字不僅輸入速度較慢,還需經(jīng)常切換,大大影響了制圖速度。由于每次的附注說明都大同小異,所以建立一個專業(yè)詞庫是很有必要的。隨時從詞庫中提取專業(yè)詞匯,可以避開漢字輸入,提高繪圖速度。詞庫也應(yīng)該可以擴充,讓設(shè)計人員隨時把常用的專業(yè)詞匯入庫并經(jīng)常整理。每張圖上已有的漢字標注也是一種資源,它們基本上都是專業(yè)詞匯,應(yīng)加以利用。把它們摘編出來,加入到專業(yè)詞庫中去,可以減輕詞庫的維護負擔。由于AutoCAD的文本處理能力較弱,還應(yīng)提供大量的文本處理工具,盡量減輕漢字輸入的負擔。

  五、形文件

  對AutoCAD的形文件也應(yīng)進行開發(fā)。AutoCAD提供了豐富的形文件,這一點從眾多的形文件就可以看出?墒茿utoCAD沒有提供結(jié)構(gòu)上常用的φ、φ及羅馬字Ⅰ~Ⅹ。結(jié)構(gòu)制圖中,φ、φ要經(jīng)常用到,沒有這樣的形,標注鋼筋時就非常麻煩。目前常見的替代方法是將它們做成一個塊,隨時插入,或者標為4  25,然后在空白處“畫”出一個φ。在改變字高或修改文本時,插入的塊或“畫”出的φ不能同時被改變而很不方便。若是一個字符串,就可以用DDEDIT命令直接加以修改。增加的形可以添加在AutoCAD形文件之后。Auto-CAD提供的形文件代碼一般只到ALT-129。用ALT-130表示φ,ALT-131表示φ,輸入起來就很方便。不少AutoCAD應(yīng)用開發(fā)資料都對字體的開發(fā)有詳細介紹。筆者認為,開發(fā)形文件沒有什么捷徑可走,如果需要特殊文本字符,只能耐心建立它們。

  六、簡化命令

  ACAD.PGP中提供的簡化命令較少,有些還不是特別簡捷。例如將“C”定義為CIRCLE,而將“CP”定義為COPY。其實COPY命令遠遠比CIRCLE命令應(yīng)用得頻繁。為何不將“C”定義為COPY而將“CI”定義為CIRCLE呢?其它如將“O”定義為OFFSET,“F”定義為FILLET,“D”定義為DDEDIT等等。應(yīng)該形成一個標準,讓大家統(tǒng)一起來,避免因習慣上的差異導致使用不便。筆者認為原則是越常用的命令就應(yīng)該越簡單。

  七、輸出比例

  比例是工程制圖中最重要的問題。一般地,在AutoCAD中,物體以毫米為單位按十足尺寸畫出。例如:5m×6m的開間,在AutoCAD中表示為5000×6000,這樣就可以省去大量的比例換算,從而方便了制圖。但線寬、字高、符號等則要考慮按比例繪出,以便出圖之后,線寬、字高、符號大小等符合要求。舉例來說:1:100的圖輸出后,要求字高為3mm,則在AutoCAD中,字高應(yīng)設(shè)為300。相反,在圖板制圖時,實際物體按比例畫出,而文字、符號等按十足尺寸畫出,所以制圖時經(jīng)常進行比例換算,比較麻煩。由于一張圖中絕大部分是實際物體,尺寸標注等都是輔助部分,故而AutoCAD要比圖板方便得多。但是,某張圖如按1:100繪制,輸出時想改成1:50,就比較困難了。僅在輸出時改變輸出比例或者用SCALE命令縮放而不修改輸出比例都會導致圖面的不協(xié)調(diào)。這是AutoCAD的一個弱點。目前的解決方法是在輸出時用程序控制字高、符號大小等,在改變輸出比例時同時改變字高、線寬等與比例有關(guān)的圖素。天正工程 公司推出的TArch 就很好地做到了這一點。

  另一個比較熱門的話題是如何在一張圖上形成不同比例的詳圖。舉例來說:1:100的結(jié)構(gòu)平面圖中可能要表示一個1:20的梁截面詳圖。其實詳圖就是原圖的放大,只是字高、符號等不應(yīng)放大罷了。由于比例不同,必然牽涉到大量的數(shù)據(jù)換算,因而特別煩瑣。采用參數(shù)化繪圖可以解決這個問題。在繪制詳圖時給出詳圖比例,將輸入的參數(shù)“放大”,輸出比例除以詳圖比例即為放大的倍數(shù),而在線寬、符號、尺寸標注等方面仍然受原輸出比例控制。把最復雜的數(shù)據(jù)換算部分交給程序去處理,大大減輕了工作量。這種方法思路獨特,缺點是必須針對不同的構(gòu)件編寫不同的程序,通用性不強。目前建研院計算中心推出的ABDS-TOOLS及筆者開發(fā)的《結(jié)構(gòu)專業(yè)AutoCAD實用繪圖工具》都提供了這樣的功能。

  八、用AutoCAD作為結(jié)構(gòu)分析 的前后處理工具

  結(jié)構(gòu)計算分析 最初都是通過填寫數(shù)據(jù)文件的方式來輸入數(shù)據(jù)的。這種方法很不直觀,而且容易出錯,很可能由于錯誤的輸入數(shù)據(jù)導致錯誤的計算結(jié)果。因為如此,許多結(jié)構(gòu)分析 都推出了自己的圖形支撐系。如PMPK,TBSA系列,都有自己的圖形前處理部分。通過人機交互式輸入,不僅更直觀,大大提高工作效率,也更容易對工程進行直接修改。由于計算分析 的重點在計算分析上,在圖形前后處理上不可能有太大投入,其圖形處理部分往往比較簡單,與AutoCAD這樣強大的圖形支撐系統(tǒng)相比,功能和界面都相差很多。所以,用AutoCAD作為前處理工具,可以說是節(jié)省了一大筆不必的開銷。而且,Auto-CAD經(jīng)過多年發(fā)展,其核心內(nèi)容已基本公開,這就更容易提供出多個計算分析 的數(shù)據(jù)接口,使得一個工程用幾個不同的計算 進行結(jié)構(gòu)分析成為可能。TAsd,AFLOOR/AMODEL就是這種類型的 。在后處理方面,AutoCAD強大的圖形編輯功能也使其它圖形支撐系統(tǒng)望塵莫及。正華公司推出的ASS95就是TBSA的AutoCAD后處理結(jié)構(gòu) 。

  九、關(guān)于計算繪圖一體化

  計算、繪圖一體化也曾經(jīng)是很熱門的話題。它的優(yōu)點是自動化程度高,目的是為了讓結(jié)構(gòu)設(shè)計人員只考慮計算分析,從煩瑣的繪圖勞動中解脫出來。但是在計算分析時往往有大量的細節(jié)問題尚未考慮到,因而出圖效果不太理想。而且,結(jié)構(gòu)制圖是一項高級勞動,計算機不可能做出智能化繪圖。筆者經(jīng)常聽到有人抱怨:“自動生成的圖是很詳細,可是也太亂了!”。其實計算機是原原本本反映設(shè)計思路的,只是由于做不到智能化繪圖,它無法確定哪兒該畫,哪兒不該畫。因為如此,很多設(shè)計院只用這類 進行計算,繪制施工圖再用其它方法。真正的計算繪圖一體化也許無法實現(xiàn),而利用AutoCAD,開發(fā)偏向于繪圖、旨在提高繪圖速度的 正成為目前的主流。

  十、問題與現(xiàn)狀

  AutoCAD自從誕生以來,就以驚人的速度向前發(fā)展。到12版止,最引人注目的新功能是用戶界面的增強帶來的更豐富的設(shè)計環(huán)境。AutoCAD自12版起引入了對話框控制語言DCL(Dialogue Control Language)。引入DCL,使應(yīng)用程序的界面大大得到改善,而且也增強了容錯性。開發(fā)時運用DCL編程技術(shù),能使應(yīng)用程序增色不少。

  一個存在的問題是雖然有很多優(yōu)秀的基于AutoCAD的結(jié)構(gòu)繪圖 ,可很多設(shè)計院卻無法應(yīng)用。在噴墨繪圖儀還不普及時,為了適應(yīng)筆式繪圖儀,AutoDESK公司提供的繪圖儀驅(qū)動程序是以顏色控制筆寬的,即不同顏色對應(yīng)不同寬度的筆號。AutoCAD升版后,因為兼容性一直保留著這個特性。很多設(shè)計院,特別是大型設(shè)計院,為了易于管理,將顏色與筆號的對應(yīng)關(guān)系做了統(tǒng)一規(guī)定,而且一直延續(xù)到現(xiàn)在。而現(xiàn)在很多 中顏色與筆號是沒有對應(yīng)關(guān)系的,每個 對顏色都有自己的標準。由于每個設(shè)計院的規(guī)定不盡相同,無法形成一個統(tǒng)一標準。這不能不說是一個遺憾。筆者的建議是一方面這些設(shè)計院應(yīng)盡快放棄這種統(tǒng)一規(guī)定,因為技術(shù)在進步,沒有必要再抱殘守缺。另一方面是 開發(fā)者也應(yīng)盡可能使自己的程序更加通用,將顏色的控制權(quán)交給用戶。這樣才能使優(yōu)秀的 發(fā)揮出更大的作用。

民眾工作室.制作      版權(quán)所有