基于VB的SolidWorks二次開發(fā)中工程圖的轉(zhuǎn)換
2013-05-17 by:廣州有限元分析、培訓(xùn)中心-1CAE.COM 來源:仿真在線
作者: 尹立霞 魏修亭 劉冰 來源: 萬方數(shù)據(jù)
關(guān)鍵字: VB語言 Solidworks 二次開發(fā) 工程圖
本文以Visual Basic在SolidWorks平臺(tái)土開發(fā)的工程圖為例.詳細(xì)介紹了利用VB高級(jí)編程技術(shù),對SolidWorks進(jìn)行二次開發(fā)的方法.該方法對實(shí)現(xiàn)由零件圖向工程圖的轉(zhuǎn)化具有一定的參考價(jià)值。
1引言
SolidWorks作為一種三維實(shí)體設(shè)計(jì)軟件,其友好的用戶界面.大眾化的運(yùn)行環(huán)境使它成為比較流行的設(shè)計(jì)軟件之一。使用SolidWorks使得三維零件實(shí)體造型、復(fù)雜裝配體和生成常用工程視圖等變得非常的方便,同時(shí)SolidWorks提供了免費(fèi)的開發(fā)工具API(Appliation Progran Interface,應(yīng)用程序接口)函數(shù),這些API函數(shù)是Solidworks的OLE或COM接口,用戶可以利用支持OLE ( Object Linking and Embedding,對象的鏈接與嵌人)和COM( Component Ohject Mudel,組件對象模型)的VB或VC語言對Solidwork。進(jìn)行二次開發(fā),建立適合自己的專用應(yīng)用方案。
在產(chǎn)品設(shè)計(jì)過程中工程圖是生產(chǎn)、制造機(jī)器等的重要依據(jù),它不僅體現(xiàn)著設(shè)計(jì)結(jié)果,而且也是指導(dǎo)生產(chǎn)的參考依據(jù)。工程圖方便了設(shè)計(jì)人員之間的交流,而且在一定程度上可以提高工作效率,但是在SolidWorks中從模型直接生成的工程圖中所標(biāo)注的尺寸、字體及注釋有些是不符合人們的習(xí)慣的,因此可以利用二次開發(fā)技術(shù)實(shí)現(xiàn)由零件圖到工程圖的轉(zhuǎn)換,并對工程圖的屬性進(jìn)行必要的修改,使其符合用戶的專有需要。
本文詳細(xì)地介紹了利用VB對SolidWork,進(jìn)行二次開發(fā)完成漸開線齒輪的工程圖及其尺寸標(biāo)注的過程,可以為其它復(fù)雜零件及裝配體等工程圖的轉(zhuǎn)換提供一定的參考。
2由VB6.0對Solidworks的二次開發(fā)
SolidWorks API是樹型層次結(jié)構(gòu)如圖I所示,SolidWorks是根目錄對象類,位于應(yīng)用程序的底層,它包括ModelDx , Environment , Frame , AttributeDef , Modeler , SWPtopertySheet,它是訪問SolidWorks API所有對象的人口程序,它能直接或間接地訪問SolidWorks API中的所有其他對象。接口對SolidWorks API的調(diào)用實(shí)行逐級(jí)尋訪,即先調(diào)用能實(shí)現(xiàn)所需功能的對象的父對象,然后調(diào)用與父對象相關(guān)的子對象,如果子對象所封裝的屬性和方法不能實(shí)現(xiàn)所需要的功能,則繼續(xù)調(diào)用該子對象的下級(jí)子對象,如此逐級(jí)遍歷,直到結(jié)束,如果對SolidWorks API對象進(jìn)行跨級(jí)調(diào)用,程序會(huì)出錯(cuò)。
在本文中用到的對象有生成標(biāo)準(zhǔn)三視圖并實(shí)現(xiàn)標(biāo)注等功能的DrawingDoc對象,用于設(shè)置尺寸標(biāo)注和公差標(biāo)注的Dimension對象。
2.1 SdidWorks二次開發(fā)通常采用的流程
(1)創(chuàng)建SolidWorks對象。實(shí)現(xiàn)和SolidWorks應(yīng)用程序的連接;
(2)利用SolidWorks提供的API函數(shù),創(chuàng)建應(yīng)用程序所需要的操作和設(shè)置;
(3)最后創(chuàng)建SolidWorks及其它對象結(jié)束程序,完成整個(gè)流程。
流程框圖如圖2所示。
2.2 SolidWorks二次開發(fā)的過程
用VB6.0開發(fā)SolidWorks時(shí),一般是利用宏錄制命令在SolidWorks環(huán)境中錄制SolidWorks的相關(guān)操作來獲得程序頭部和應(yīng)用程序的代碼,并將代碼經(jīng)過適當(dāng)?shù)男薷暮蠓诺絍B中使用。
在SolidWorks中利用宏錄制的方法:選擇SolidWorks菜單下的視圖!工具}宏!錄制命令。當(dāng)在SolidWorks中錄制完所需的操作后,點(diǎn)擊菜單下的視圖|工具|宏|停止命令保存,然后點(diǎn)擊菜單下的視圖|工具|宏|編輯打開錄制的宏進(jìn)行編輯和修改后作為VB的原代碼。
2.3 SolidWorks二次開發(fā)的用戶界面
按照用戶的需要,建立自己的專用用戶界面如圖3所示。首先根據(jù)零件選擇圖紙的大小,點(diǎn)擊工程圖轉(zhuǎn)化按鈕進(jìn)行工程圖的轉(zhuǎn)換,然后根據(jù)需要對工程圖屬性進(jìn)行操作。
3由VB6.0開發(fā)SolidWorics中由零件圖轉(zhuǎn)化為工程圖的方法
3.1生成標(biāo)準(zhǔn)三視圖
在生成三視圖的時(shí)候,首先應(yīng)根據(jù)零件和繪圖比例的大小選擇圖板和圖紙的大小,該程序以A2圖紙為例進(jìn)行轉(zhuǎn)化,并且自動(dòng)標(biāo)注尺寸。在進(jìn)行圖紙轉(zhuǎn)化時(shí)應(yīng)根據(jù)實(shí)際需要將模型和工程圖中的原點(diǎn)顯示關(guān)閉,否則在輸出給DXF時(shí)一些代表軸線的非常細(xì)的線也會(huì)一起輸出,不利于圖紙的清晰度。
運(yùn)行效果:程序運(yùn)行前如圖4所示。程序運(yùn)行后如圖5所示。
一般的零件用三視圖就可以表達(dá)清楚了,對于一些很復(fù)雜的零件,三視圖沒有很好的表達(dá),并且給其他用戶的看圖造成困難時(shí),可以用剖視圖函數(shù)retval = DrawingDoc.CreateSectionViewAt4(X, Y, Z, SectionLabel,Options ExcludedComponents)生成剖視圖或者其它的局部視圖來增加圖紙的可讀性。
3.2尺寸操作
在SolidWorks環(huán)境中改變圖紙尺寸時(shí),只能在工程圖中對單個(gè)尺寸進(jìn)行修改,相對比較繁瑣。在本程序中可以同時(shí)將選中的多個(gè)尺寸進(jìn)行強(qiáng)制修改并設(shè)置尺寸公差。
3.3設(shè)置圖紙比例
如果在工程圖中往往要根據(jù)要求進(jìn)行工程圖的比例放大或縮小,在二次開發(fā)中是很容易實(shí)現(xiàn)的,該程序以改變工程圖4倍為例。
4結(jié)束語
本文通過實(shí)例介紹了二次開發(fā)在工程圖轉(zhuǎn)換中的應(yīng)用,還有許多如注釋、粗糙度等對工程圖屬性的操作在VB對SolidWorks二次開發(fā)中都是可以實(shí)現(xiàn)的,讀者可以根據(jù)自己的需要進(jìn)行開發(fā)和研究。
相關(guān)標(biāo)簽搜索:基于VB的SolidWorks二次開發(fā)中工程圖的轉(zhuǎn)換 SolidWorks培訓(xùn)課程 SolidWorks設(shè)計(jì)教程 SolidWorks視頻教程 SolidWorks軟件下載 SolidWorks在建筑室內(nèi)設(shè)計(jì)工業(yè)設(shè)計(jì)的應(yīng)用 SolidWorks基礎(chǔ)知識(shí) SolidWorks代做 Fluent、CFX流體分析 HFSS電磁分析 Ansys培訓(xùn) Abaqus培訓(xùn) Autoform培訓(xùn)