吳平峰
(貴州電子信息職業(yè)技術(shù)學(xué)院,凱里 556000)
Solidworks二次開發(fā)技術(shù)在工程圖中的應(yīng)用
吳平峰
(貴州電子信息職業(yè)技術(shù)學(xué)院,凱里 556000)
Solidworks二次開發(fā)技術(shù)在工程圖內(nèi)使用的頻率越來(lái)越高,本文主要以VB程序設(shè)計(jì)語(yǔ)言為基礎(chǔ),針對(duì)SolidWorks工程圖展開二次開發(fā)工作。首先介紹SolidWorks二次開發(fā)過(guò)程內(nèi)使用的具體原理、流程以及用戶界面,其次開展工程圖標(biāo)注與轉(zhuǎn)化工作。
Solidworks二次開發(fā)技術(shù)工程圖API函數(shù)
SolidWorks實(shí)質(zhì)上屬于一種三維設(shè)計(jì)軟件,其主要功能是將二維繪畫技術(shù)與三維造型技術(shù)結(jié)合在一起。同時(shí),保證在三維模型內(nèi)部的全部參數(shù)都能夠與二維工程圖之中對(duì)應(yīng)信息相同,以進(jìn)一步說(shuō)明數(shù)據(jù)本身的一致性。但在大多數(shù)情況下,SolidWorks軟件根據(jù)模型形成的工程圖對(duì)應(yīng)注解、字體以及尺寸,都不能達(dá)到我國(guó)在工程制圖方面提出的嚴(yán)格要求。如果使用應(yīng)用軟件本身的方式展開修正工作,則會(huì)顯得更加復(fù)雜。因此,怎樣采用程序開發(fā)的方式完成交互界面內(nèi)部工程圖信息的修改與添加,變?yōu)檎麄€(gè)問(wèn)題的核心。
SolidWorks API屬于一種較為明顯的屬性層次結(jié)構(gòu)。而SolidWorks則可以視為根日錄對(duì)象類,其普遍存在于應(yīng)用程序的底部。在SolidWorks中,包含有WpropertySheet、Mxleler、AttributeDef以及Frame等不同部分。當(dāng)需要訪問(wèn)SolidWorks API的時(shí)候,SolidWorks就能夠直接充當(dāng)一個(gè)入口程序進(jìn)行使用。SolidWorks可以直接訪問(wèn)存在于SolidWorks API之中的全部對(duì)象。在SolidWorks API調(diào)用過(guò)程中,接口普遍都是采用逐級(jí)尋訪的方式。簡(jiǎn)單來(lái)說(shuō),即為先調(diào)用需要功能對(duì)象的父對(duì)象,其后再選擇該父對(duì)象中的子對(duì)象,進(jìn)而得到自身需要的功能。若子對(duì)象對(duì)應(yīng)的方式以及屬性不能完成使用者需要的功能,則繼續(xù)調(diào)用該子對(duì)象下面的子對(duì)象。若還是沒(méi)有達(dá)到要求,就一直循環(huán)上述操作,直到功能真正實(shí)施。但在操作過(guò)程中,若操作者直接采用跨級(jí)方式進(jìn)行調(diào)用,那么程序就會(huì)發(fā)生錯(cuò)誤。
(1)SolidWorks二次開發(fā)的原理。Solidworks將向外界提供上百個(gè)API函數(shù),其主要目的是幫助用戶展開二次開發(fā)工作。而提供的API可以直接作為Solidworks內(nèi)COM或OLE接口。相關(guān)用戶能夠通過(guò)使用高級(jí)語(yǔ)言的方式展開二次開發(fā)工作,進(jìn)而設(shè)計(jì)得到滿足客戶需要且專門化的Solidworks功能模塊。使用者還能夠采用調(diào)節(jié)API函數(shù)的方式,幫助零件做好各種修改以及建造工作;根據(jù)各個(gè)零件特征進(jìn)行壓縮、刪除以及修改項(xiàng)目的控制工作;提取各個(gè)零件內(nèi)部的特征信息,其中主要包括特征尺寸;用戶還能夠在Solidworks主菜單中添加大量不同的圖標(biāo),把已經(jīng)開發(fā)完成的應(yīng)用模塊安裝至管理系統(tǒng)內(nèi)部,同時(shí)將此作為根本,使模具與零件兩者真正做到參數(shù)化驅(qū)動(dòng)。
針對(duì)Solidworks展開二次開發(fā)的手段主要包括兩種。第一種是通過(guò)人機(jī)交互方式設(shè)計(jì)相關(guān)模型,同時(shí)設(shè)置與之對(duì)應(yīng)的參數(shù)。該方式相較于其他方式來(lái)說(shuō),編程過(guò)程較為簡(jiǎn)易,同時(shí)具備較號(hào)的通用性。第二種則是全部通過(guò)程序來(lái)達(dá)到三維模型的模型編輯與參數(shù)設(shè)計(jì)目的。該方式相較于上面方法來(lái)說(shuō)更加繁瑣,但適用于具備復(fù)雜形體的零件。
(2)SolidWorks二次開發(fā)的流程。SolidWorks在二次開發(fā)環(huán)節(jié)內(nèi),經(jīng)過(guò)的主要流程普遍能夠劃分為三步:第一,在程序內(nèi)部創(chuàng)建得到一個(gè)SolidWorks對(duì)象,進(jìn)而完成連接SolidWorks應(yīng)用程序的目的;第二,通過(guò)SolidWorks技術(shù)得到需要使用的API函數(shù),同時(shí)做好創(chuàng)建應(yīng)用程序過(guò)程中所有需要的操作準(zhǔn)備;第三,根據(jù)上述兩個(gè)步驟,得到SolidWorks和相關(guān)對(duì)象,最后結(jié)束程序。
(3)SolidWorks二次開發(fā)的過(guò)程及用戶界面。通過(guò)VB 對(duì)SolidWorks進(jìn)行開發(fā)的時(shí)候,必須采用宏錄制命令獲得對(duì)應(yīng)操作以及需要的應(yīng)用程序代碼,其后對(duì)已經(jīng)得到的代碼進(jìn)行修正,就能夠直接投放入VB內(nèi)展開使用。同時(shí),操作者為進(jìn)一步加強(qiáng)工作效率,將通過(guò)VB針對(duì)SolidWorks展開二次開發(fā)工作,進(jìn)而設(shè)計(jì)得到工程圖屬性窗口,具體如圖1所示。由該窗口能夠簡(jiǎn)單快速地得到工程圖內(nèi)部的形位公差、粗糙度以及尺寸公差參數(shù),同時(shí)根據(jù)自身需要進(jìn)行修改。
圖1 工程圖屬性窗口
以使用者需求和設(shè)置圖紙尺寸為基礎(chǔ),針對(duì)工程圖屬性展開各項(xiàng)相關(guān)操作步驟。其后采用點(diǎn)擊輸出零件工程圖圖標(biāo)的方式,運(yùn)用VB程序達(dá)到標(biāo)注工程圖注解、尺寸以及轉(zhuǎn)換的目的。
(1)生產(chǎn)標(biāo)準(zhǔn)三視圖。當(dāng)形成三視圖的過(guò)程中,第一項(xiàng)步驟應(yīng)該為按照繪圖比例對(duì)應(yīng)的尺寸,選擇相應(yīng)的圖號(hào)。筆者主要將通過(guò)袋包裝機(jī)內(nèi)部的縱封輥達(dá)到轉(zhuǎn)換目的。其中,涉及到的圖號(hào)A1,能夠通過(guò)自動(dòng)方式對(duì)注解以及尺寸進(jìn)行標(biāo)注。因?yàn)榭v封輥相較于其他零件來(lái)說(shuō),結(jié)構(gòu)更加簡(jiǎn)單,因此這里只選擇其中一個(gè)部分作為例子,具體如圖2所示。
圖2 縱封輥部分視圖
為讓讀者更加清晰地理解零件內(nèi)的結(jié)構(gòu)與尺寸,可以采用局部視圖和剖視圖的方式進(jìn)行表達(dá),進(jìn)而加強(qiáng)圖紙本身的可讀性。
(2)圖紙屬性操作。零件圖中會(huì)涵蓋許多不同的內(nèi)容。當(dāng)通過(guò)SolidWorks技術(shù)對(duì)需要零件展開參數(shù)化設(shè)計(jì)的過(guò)程中,若零件尺寸發(fā)生變化,那么圖紙的尺寸也要隨之產(chǎn)生相應(yīng)變化,其中涉及到的粗糙度、形位公差注釋必須適時(shí)作出必要改進(jìn)。由于SolidWorks工程圖內(nèi)部的粗糙度和形位公差都是根據(jù)圖紙內(nèi)坐標(biāo)展開標(biāo)注,所以當(dāng)零件尺寸產(chǎn)生變化,對(duì)應(yīng)坐標(biāo)尺寸也會(huì)相應(yīng)產(chǎn)生變化,進(jìn)而形成不能尋找到所需坐標(biāo)的現(xiàn)象。但在本文程序中,已經(jīng)徹底解決該亂標(biāo)問(wèn)題。
從SolidWorks工程圖的角度來(lái)說(shuō),普遍都是將工程圖中左下角的位置作為原點(diǎn),其后再采用粗糙度和形位公差等參數(shù)在圖紙內(nèi)部達(dá)到注解目的。所以,即使零件產(chǎn)生一定變化,其也能夠通過(guò)自身調(diào)節(jié)達(dá)到準(zhǔn)確定位的目的。這里涉及到的程序如下:
在上述程序內(nèi),(a+b,c+d,0)表示的含義為粗糙度對(duì)應(yīng)的坐標(biāo),(a,c,0)表示的含義是在零件視圖過(guò)程中對(duì)應(yīng)的幾何坐標(biāo)。若零件展開參數(shù)化改變,那么其將會(huì)以(a,c,0)作為中心點(diǎn)向周圍延伸,因此可以將(b,d,0)視為零件尺寸對(duì)應(yīng)的該變量。
筆者主要通過(guò)VB語(yǔ)言,針對(duì)SolidWorks展開了二次開發(fā)工作。同時(shí),還運(yùn)用工程圖繪制以及封輥零件參數(shù)設(shè)置環(huán)節(jié),進(jìn)一步闡述二次開發(fā)在實(shí)際操作中具備的意義。這種操作方式還對(duì)機(jī)械工程圖設(shè)計(jì)環(huán)節(jié)內(nèi)SolidWorks軟件存在的不足進(jìn)行彌補(bǔ),使SolidWorks軟件在整個(gè)機(jī)械制造業(yè)內(nèi)的核心地位得到了有利保障。
[1]SolidWorks公司.SolidWorks API二次開發(fā)[J].北京:機(jī)械工業(yè)出版社,2014:59-62.
[2]江洪,魏崢,王濤威.SolidWorks二次開發(fā)實(shí)例解析[J].北京:機(jī)械工業(yè)出版社,2013:156-159.
[3]李京奎,靖穎怡.基于SoildWorks的參數(shù)化設(shè)計(jì)[J].天津理工大學(xué)學(xué)報(bào),2001,2(8):7-9.
Application of Solidworks Two Development Technology in Engineering Drawing
WU Pingfeng
(Guizhou electronic information Career Technical College,Kaili 556000)
At present,two Solidworks development technology more and more higher with the frequency of the use of Engineering drawings. In this paper,based on the VB programming language,for the Solid-Works project plans to start the two development work.First introduces SolidWorks secondary development process in the use of specific principles,process and user interface.Secondly carry out engineering icon note and conversion,and is helpful to protect the Software Solidworks in the mechanical manufacturing industry the core position.
solidworks,two development technology,engineering drawing,API function