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