當前位置:學問君>學習教育>畢業論文>

ObjectARX環境下的結構建模系統的開發

學問君 人氣:2.53W

摘要:本文介紹了AutoCAD提供的ObjectARX開發環境,闡述了利用ObjectARX開發一種新的結構建模系統的思路及方法,即直接利用繪圖工具進行結構資訊輸入。輸入的結構資訊可以生成爲不同的數據檔案,從而大大提高工作效率。

ObjectARX環境下的結構建模系統的開發

關鍵詞:結構建模 ObjectARX 面向對象

前言

近年來,隨着計算機技術的飛速發展,絕大多數的工程設計人員已經採用計算機來進行建築結構的分析和設計。在實際應用中,有衆多的結構分析軟件可供選擇,如ANSYS、SAP2000等。這些軟件雖然都能較好地完成分析任務,但它們基本上都是按傳統的編程方法實現的,其前後處理功能還有待進一步改進。結構分析軟件中的前後處理部分通常是用戶耗時最多的階段,尤其是結構建模部分更是關鍵,它直接影響着軟件的應用效率。因此,對結構建模這一功能模組進行專門的研究和開發,使其擁有更強的功能和更高的效率,成爲了建築結構設計及軟件開發人員的重點課題。
  利用純Windows風格的AutoCAD2000提供的開發環境ObjectARX來進行結構建模系統的研製,可以充分利用面向對象編程技術的優勢,最大限度地提高系統資源的利用率和軟件系統的功能,而且也符合廣大工程設計人員的使用習慣,有助於設計人員快速地掌握、使用新開發的'結構建模系統,提高工作效率。

1 面向對象的開發環境ObjectARX

AutoCAD是目前在Windows 98/2000/NT環境下應用最廣泛、使用人數最多的CAD軟件,它是廣大工程設計人員最爲熟悉的工作平臺。AutoCAD2000除了提供一般通用的CAD功能,如繪圖、編輯等,還爲用戶提供了不同的開發環境,如AutoLISP、VisualLISP、ObjectARX等。其中,ObjectARX是一種特定的C 編程環境,它是在AutoCAD R13使用的ARX(AutoCAD Run-time eXtention)的基礎上發展起來的第二代面向對象的編程環境。ObjectARX應用程序本質上是Windows DLL程序,而AutoCAD本身則是一個典型的Windows程序,因此ObjectARX應用程序與AutoCAD、Windows之間均採用Windows的消息傳遞機制直接通信。ObjectARX程序以C 爲基本開發語言,具有面向對象編程方式的數據可封裝性、可繼承性及多態性等特點。用其開發的CAD軟件具有模組性好、獨立性強、連接簡單、使用方便、內部功能高效實用等優點,並且支援MFC(Microsoft Fundation Class),能簡潔並高效地實現許多複雜功能。

2結構建模系統的設計思想

爲了配合工程設計人員的使用習慣,本文的設計思想是使設計人員在使用CAD命令繪製圖形的同時,對圖形對象進行處理,使繪製所得的結構模型檔案中既有結構幾何資訊,又包含荷載資訊、約束資訊等,並可輸出爲用戶所需的數據檔案。
  基於這種思想,採用面向對象的方法進行開發是最合適的選擇。所謂面向對象,其指導思想是按人們通常的思維方式建立問題域模型,設計出儘可能自然地表現求解方法的軟件。爲此,必須儘量直接表現組成問題域的事物及事物間的相互聯繫的概念,建立適合人們思維方式的描述模式。當前,計算機技術正朝着分佈式處理、並行處理、智能化、網絡化的方向發展,而面向對象技術即是實施這些目標的關鍵技術之一。現在,面向對象程序設計的思想和工具已經在建築結構程序設計中得到廣泛應用。
  一個工程的結構部分主要由樑、柱等構件組成,透過對其基本資訊的研究,可以歸納總結出各種構件的特徵資訊,然後分別對其進行整理,並最終把它們賦予矢量圖形的圖素中。在程序執行過程中,根據圖形資訊查找到相應的特徵資訊,從而達到繪圖與建模同步完成的目的。

3結構建模系統的開發方法

在ObjectARX環境下進行建模系統的開發,其步驟如圖1所示。
  爲了便於分類管理,在創建結構模型之前應使系統自動進行初始化,如對各種不同的構件分配不同的線形、顏色及層名等。利用ObjectARX包含的AcEd、AcDb類庫中的相關函數可以簡便地完成這些功能要求,也可以使用具有相同功能的全局函數來實現,如acdbEntMod()全局函數就可以用來修改一個實體所在的層。