SOLIDWORKS 強(qiáng)大功能之宏(一)
作為一款通用設(shè)計軟件,SOLIDWORKS可以幫助用戶完成結(jié)構(gòu)的設(shè)計、驗證及加工等企業(yè)所需的應(yīng)用需求;
但是使用者在需要實現(xiàn)某些特定場景的功能時,可能會發(fā)現(xiàn)SOLIDOWORKS無法完全滿足自身的需求,或者在能夠滿足的情況下需要花費(fèi)比較大的精力,影響了設(shè)計效率;
如果這種場景在產(chǎn)品設(shè)計中經(jīng)常出現(xiàn),使用者可以考慮借助一些第三方的插件去實現(xiàn)這些需求;但是第三方插件往往也只是一種通用化的工具,在第三方插件也同樣無法滿足我們的要求時,我們可以考慮SOLIDWORKS為用戶提供的強(qiáng)大功能——宏。
宏實際是SOLIDWORKS為使用者提供的一個擴(kuò)展編程接口,用戶可以通過API調(diào)用SW的各類函數(shù),實現(xiàn)以往我們無法完成的操作;
我們可以使用宏完成以下常見操作:
1.遍歷裝配體的整個結(jié)構(gòu)樹,為所有零件指定默認(rèn)材質(zhì);
2.為零件隨機(jī)上色;
3.批量添加、修改屬性;
4.導(dǎo)出符合企業(yè)要求的BOM結(jié)構(gòu),并為BOM添加表頭;
5.參數(shù)化設(shè)計程序;
…
那么使用者如何創(chuàng)建一個基本的宏程序呢?接下來我們將介紹如何為SOLIDWORKS創(chuàng)建一個標(biāo)準(zhǔn)件生成器的插件;
1. 新建一個Part,創(chuàng)建一個o圈模型,標(biāo)注尺寸信息,保存文件;

2. 在SOLIDWORKS菜單中找到“宏”的工具模塊,點(diǎn)擊后,在彈出的宏工具模塊中選擇“新建宏”,并保存該“宏”文件名稱為“標(biāo)準(zhǔn)件插件”;



3.以下是通過“宏”并編輯器打開的“標(biāo)準(zhǔn)件插件.swp”文件;

4.現(xiàn)在我們需要為創(chuàng)建該插件的UI界面,來完成O圈的各類不同設(shè)置,并實現(xiàn)數(shù)據(jù)的采集;首先,用戶可以創(chuàng)建一個窗口組件;

5.使用工具箱控件為UserForm1窗體創(chuàng)建如下UI界面,包含可選的多頁頁簽,選擇o圈形式的單選按鈕,o圈的尺寸參數(shù)輸入框,生成按鈕;

6.創(chuàng)建VBA代碼,判斷單選按鈕哪一個處于激活狀態(tài),根據(jù)激活狀態(tài)以確定內(nèi)徑和外徑輸入欄的位置;

以下是單選按鈕按下時的不同效果:


7.接下來創(chuàng)建內(nèi)徑、線徑、外徑的生成代碼,已知這三者的轉(zhuǎn)換公式:外徑=內(nèi)徑+2*線徑,且我們需要在輸入兩個數(shù)據(jù)后,第三個數(shù)據(jù)立即計算出來,因此需要代碼能夠?qū)崟r刷新,所以需要在輸入框內(nèi)部的修改事件中觸發(fā),代碼如下:


實現(xiàn)的效果如下:

8. 通過以下代碼,在點(diǎn)擊按鈕時,將數(shù)據(jù)參數(shù)傳遞至3D模型,并通過調(diào)用已經(jīng)創(chuàng)建好的標(biāo)準(zhǔn)模型,實現(xiàn)對模型的參數(shù)修改,另存為新的文件;

以上我們通過一個o圈的制作,簡單介紹了基于VBA的SOLIDWORKS宏開發(fā);后期,我們會進(jìn)一步創(chuàng)建其他功能模塊來完成該標(biāo)準(zhǔn)件生成器的開發(fā),敬請期待!