SolidWorks軟件是完全基于 Windows 的 CAD/CAE/ CAM/ PDM 桌面集成系統 ,它的核心技術是在 Windows 環境下生成的 ,充分利用和發揮了Windows的強大威力和OLE技術,具有用戶界面友好,上手快的優點。該軟件支持 Visual Basic、Visual C++或其它 OLE 開發語言,免費提供二次開發工具API,用戶二次開發的應用程序,可直接掛在SolidWorks菜單下,形成統一的界面。然而SolidWorks 與許多商品化的 CAD/ CAM 系統如PRO/E、UG、AUTOCAD 等一樣 ,它們雖然在模具行業中得到了廣泛應用 ,但由于這些 CAD/ CAM 系統都是作為通用機械設計與制造軟件來設計的,不是特別針對模具的,因此為了提高模具設計的效率,需要對其進行二次開發。
1用VISUAL C++ 開發 SolidWorks 的原理
SolidWorks 通過 OL E 技術為用戶提供強大的二次開發接口 API ,其中包括含有數以百計的功能函數。API 接口采用面向對象的方法 ,所有的函數都是有關對象的方法或屬性。這些對象涵蓋了所有 SolidWorks的數據模型 ,通過這些對象屬性的設置和方法的調用 ,用戶可以在自己開發的 DLL 中實現與 SolidWorks 相同的功能。
這些 API 函數可被 Visual C++ 、Visual Basic、Delphi、VBA ( EXCEL 、ACCESS) C、C++ 或 SolidWorks 的宏文件調用 ,使得開發出的程序具有直接訪問 SolidWorks的能力。當使用 Visual Basic 進行開發時 ,只能采用外掛的工作模式 ,即需要用戶的應用程序和 SolidWorks之間進行前臺后臺切換 ,所以降低了設計效率。而使用 Visual C++ 開發的應用程序可以直接嵌入到 SolidWorks 內部 ,加載成功后應用程序菜單直接出現在 SolidWorks 的主菜單上 ,如同 SolidWorks的自帶功能一樣進行工作 ,極大地提高了設計效率。
2用VISUAL C++ 開發 SolidWorks 的關鍵技術
2. 1 組件對象模型(COM)
開發 *.DLL 需要了解 COM 技術。COM 是微軟公司、數字設備公司(DEC) 及其他一些公司所支持的一種軟件結構的"工業標準"。SolidWorks 作為基于 Windows 的原創軟件 ,為便于用戶開發的程序與 SolidWorks通信 ,提供了采用 COM 技術開發應用程序的方法。用戶開發的代碼可以作為獨立的EXE 文件或 DLL 文件存在 ,它們就是 COM 模塊。采用 COM 技術在 SolidWorks 平臺上作二次開發時 ,通過直接訪問 SolidWorks 底層對象可以方便地擴充 SolidWorks的功能。
2. 2 動態鏈接庫(DLL) 的建立
獨立的 EXE 文件和 DLL 文件都可以作為COM 的組件 ,但是編寫 EXE 程序時 ,必須每次在做原型改變時都重建并測試。與此不同 ,可以創建較小的 DLL 模塊 ,并單獨測試 ,客戶程序在運行時很快裝載并連接用戶的 DLL。SolidWorks 提供了DLL 加載的接口 ,能夠將用戶的 DLL 通過加載嵌入到 SolidWorks內部。
2. 3 數據庫的創建
系統采用 Access 作為管理數據庫的工具。使用DAO (Data Access Objects) 技術對數據庫操作。Visual C++ 開發 DAO 數據庫應用的方法和步驟與ODBC(Open Data Base Connectivity) 基本類似 ,但Visual C++ 的 MFC 包含的 DAO 類比 ODBC 類更加豐富 ,使得利用 DAO 實現某些數據庫操作(如數據庫查詢)更加簡單、方便。
3 開發思路及技巧
3. 1 開發思路
SolidWorks 是基于參數化和特征造型技術的軟件 ,對其進行二次開發應遵循參數化 CAD 的原則。即對于企業中系列化、通用化和標準程度高的產品 ,其包含的拓撲信息基本上是一樣的 ,不同的僅是幾何信息。對于這類產品 ,可以將已知條件及其它隨著產品規格而變化的基本參數用相應的變量代替 ,然后根據這些已知條件和基本參數 ,由 SolidWorks查詢數據庫 ,或由 SolidWorks 計算出所需的全部數據 ,自動完成設計 ,并在屏幕上顯示出來。
3. 2 開發方式的選擇
采用參數化原則設計標準件庫大體分兩種:程序驅動法;尺寸參數驅動法。選用程序驅動法時 ,可在用戶界面的對話框中輸入初始參數并對數據庫進行查詢 ,然后用從數據庫中提取的參數進行繪圖。其中繪圖部分代碼要靠程序員完成 ,程序驅動法可以借助SolidWorks 的宏記錄功能。SolidWorks 的宏可以記錄標準件模板生成的全部過程并生成 VBScript 程序代碼 ,然后由人工轉換為 Visual C++程序。
選用尺寸參數驅動法時 ,首先在 SolidWorks 中繪制標準件的模板零件并保存為*.sldprt 文件 ,同時對要進行尺寸驅動的尺寸命名 ,如"L @草圖 1"。然后等用戶選擇完參數后 ,在內存中打開已存的 *.sldprt 文件 ,并用從數據庫中提取的參數替換"L @草圖 1"尺寸 ,重新建模 ,生成新的零件。
3. 3 開發步驟及技巧
(1) 從 SolidWorks 公司網站下載向導文件SWIZARD. awx ,將其添加到 MicrosoftVisualstudio/Common/ MSDev98/ Template 目錄下。然后 ,在 Visual C++ 中用該向導創建工程 ,添加相關代碼 ,編譯生成 *.DLL 文件。
相關文章
- 2021-09-08BIM技術叢書Revit軟件應用系列Autodesk Revit族詳解 [
- 2021-09-08全國專業技術人員計算機應用能力考試用書 AutoCAD2004
- 2021-09-08EXCEL在工作中的應用 制表、數據處理及宏應用PDF下載
- 2021-08-30從零開始AutoCAD 2014中文版機械制圖基礎培訓教程 [李
- 2021-08-30從零開始AutoCAD 2014中文版建筑制圖基礎培訓教程 [朱
- 2021-08-30電氣CAD實例教程AutoCAD 2010中文版 [左昉 等編著] 20
- 2021-08-30電影風暴2:Maya影像實拍與三維合成攻略PDF下載
- 2021-08-30高等院校藝術設計案例教程中文版AutoCAD 建筑設計案例
- 2021-08-29環境藝術制圖AutoCAD [徐幼光 編著] 2013年PDF下載
- 2021-08-29機械AutoCAD 項目教程 第3版 [繆希偉 主編] 2012年PDF