0 引言
SolidWorks是基于Windows平臺的三維機械設計軟件,在國內已得到廣泛使用。該軟件具有全面的實體建模功能,可快速生成完整的工程圖,其尺寸驅動功能使圖樣的修改更加方便,此外還可以進行模具設計、工程分析以及產品數據管理等。總之,SolidWorks功能強大、技術創新,且易學、易用。為了更好地使用軟件,以VB為開發工具,利用SolidWorks OLE應用程序開發接口API函數,實現了SolidWorks中自定義屬性插件的開發,方便了SolidWorks用戶的設計工作,提高了設計效率。
大多數工程圖的標題欄中應該包括一些基本的設計信息,如零件名稱、零件代號、材料以及設計者等,其中零件名稱、零件代號、備注等信息還要出現在裝配圖的材料明細表中,這些內容若在工程圖中一一進行編寫和修改,其工作量大且不利于保證零件三維圖與工程圖設計信息的一致性。
SolidWorks是一個全相關的機械設計軟件。其三維模型文件中的設計數據,如尺寸、注釋和文件屬性等內容與工程圖相關。因此,在處理工程圖標題欄和材料明細表中的設計數據時,可以將這些內容保存在三維模型文件中,使其自動顯示在工程圖相應的位置上,當需要對工程圖中的內容進行修改時,直接修改三維模型文件中的相應數據即可實現,這樣不僅保證了設計信息的一致性,還可以提高設計效率。然而即使這樣,也十分繁瑣,如果能開發一個控件,與solidWorks軟件融為一體,則可以達到事半功倍的效果。
1 Active Ocx控件的開發
為了提高效率,以VB為開發工具,筆者開發了一個Active Ocx控件,并用SolidWorks“宏”操作來引用該控件,從而在SolidWorks中生成一個Properymanagerpage,并利用其中的控件添加自定義屬性。程序運行界面如圖1所示。
圖1 程序運行界面
該程序可實現的功能如下。
1)如果文件只有一個默認配置“Default”,則自定義屬性添加在文件的“自定義”欄,如果文件有兩個及以上配置,則屬性根據配置不同添加在“配置特定”欄。
2)添加的項目包括作者、序號和名稱等,具體如圖1所示。
3)選擇不同的配置名稱,則相應屬性信息顯示在對應的文本框內。
Active Ocx控件的開發步驟為:首先在VB中,新建工程,選擇ActiveX控件,然后“確定”,并引用SolidWorks類和SolidWorks常數類,修改工程名稱為propertymgr,并設置此項目為工程兼容,在名稱欄輸入“shuxing.ocx”,之后如圖1所示在用戶控件UserControll上添加各個控件。
1.1獲得SolidWorks對象
獲得SolidWorks對象,即獲得與SolidWorks的接口,這是SolidWorksAPI最高級別的對象,可以控制SolidWorks文件的建立、打開和關閉等操作。代碼如下:
1.2獲得文件名稱與配置名稱
SolidWorks API提供了按照配置名稱訪問自定義屬性的方法CustomInfO2(讀取自定義屬性的值)、DeleteCustomInfo2(刪除指定的自定義屬性)、AddCustomInfo3(添加自定義屬性的名稱和參數值),這些方法都要求指定文件的配置名稱。因此為了對當前模型文件和當前配置設定自定義屬性,必須首先要獲得當前配置的名稱,利用GetConfiguration-Names()方法可以獲得當前模型文件配置的名稱,并利用GetConfigurationCount()方法獲得當前配置的數量。代碼如下:
1.3訪問自定義屬性
本程序設計根據配置不同而分別添加不同的自定義屬性。主要屬性配置方法如下。
1)CustomInfo:如果只有一個默認配置,將獲取當前文檔自定義欄中的自定義屬性的值。
其中,“序號”為自定義屬性的名稱(以下同)。
2)DeleteCustomInfo:如果只有一個默認配置,將刪除當前文檔自定義欄中的自定義屬性的值。
3)CustomInfo2:如果有兩個及以上配置,將獲取當前文檔指定配置的自定義屬性的值。
其中,configname為配置名稱。
4)DeleteCustomInfo3:如果有兩個及以上配置,刪除當前文檔指定配置的自定義屬性的值。
5)AddCustomInfo3:如果有兩個及以上配置,向當前文檔中指定的配置添加自定義屬性及值。
其中,swCustomInfoNumber為自定義屬性的類型;UserControl.Text2.Text為自定義屬性的具體值。
主程序代碼完成后,就可以點擊“文件→生成shuxing.ocx”,完成Active Ocx控件的開發。
2 在SolidWorks中運行
要在SolidWorks中運行上面生成的控件,需要由“宏”程序調用。利用“宏”在solidWorks界面中添加指定的應用程序后,就如同S0lidWorks調用了自身的功能一樣。
2.1建立“宏”程序
建立“宏”程序,首先建立與solidWorks的連接,并判別當前文檔是不是零件或者裝配文件,如果是,則調用shuxing.ocx;如果是工程圖文件,則顯示錯誤。
部分代碼如下:
其中CreateFeatureMgrControl為創建特性管理器視圖方法,”propertymgr.UserControll”為對8huxing.ocx控件的調用。
2.2指定“宏”操作
在SolidWorks中可以指定宏命令的文件位置,并定制工具欄,將所執行的宏操作按鈕添加到指定的位置上。具體步驟如下。
點擊菜單“工具→自定義→命令→宏”,選擇“新建宏按鈕”,拖動圖標到SolidWorks任意工具欄,再按照圖2所示的設置即可。
圖2 指定“宏”操作
設置完成后,點擊設置好的圖標,就可以在SolidWorks運行該程序(運行界面見圖1)。
3 結語
筆者開發的Active Ocx控件,可以用“宏”程序調用。以特性管理器頁面的方式來顯示程序,可以使程序與SolidWorks界面結合緊湊,方便使用。
相關文章
- 2021-09-08BIM技術叢書Revit軟件應用系列Autodesk Revit族詳解 [
- 2021-09-08全國專業技術人員計算機應用能力考試用書 AutoCAD2004
- 2021-09-08EXCEL在工作中的應用 制表、數據處理及宏應用PDF下載
- 2021-08-28計算機輔助設計與制造 21世紀全國應用型本科大機械系
- 2021-08-27計算機輔助設計與制造 21世紀全國應用型本科大機械系
- 2021-08-23精通AutoCAD三維設計與開發PDF下載
- 2021-08-23零基礎學AutoCAD 2012電氣制圖工程應用 [張立富,陳剛,彭
- 2021-08-22AutoCAD 室內裝潢設計應用大全中文版 [馬永志,鄭藝華,劉
- 2021-08-22AutoCAD 2013應用與開發系列中文版AutoCAD 2013室內裝
- 2021-08-22AutoCAD 2013應用與開發系列中文版AutoCAD 2013機械圖