久久国产色av_国产人妻777人伦精品hd_欧美 国产 日本_好吊色欧美一区二区三区

您的位置:網站首頁 > Solidworks

Visual C++對SolidWorks的二次開發方法

時間:2010-06-02 08:00:00 來源:
副標題#e#

   1前言
   
    為了縮短產品開發周期、提高市場競爭能力 ,各企業在產品設計中大多要對通用 CAD 軟件進行二次開發 ,建立適合自己的專用模塊。但目前所開發的 CAD 系統 ,一般是對二維繪圖軟件如 AutoCAD 進行二次開發 ,實現機械零件參數化設計。由于二維繪圖軟件本身無法實現參數化驅動 ,所以對其進行二次開發的周期長、工作量大、不易實現 CAX系統的集成。而三維繪圖軟件如 SolidWorks ,采用特征建模、參數化驅動可方便地設計出三維實體模型。利用三維實體模型可以自動生成二維工程圖;可以在生產之前動態模擬裝配過程、進行干涉檢查;可以對重要零部件進行有限元分析與優化設計(CAE) ;可以模擬數控加工(CAM) ;可以生成零件的工藝規程(CAPP) ,這樣就易于實現 CAX系統的集成。所以基于三維繪圖軟件的二次開發必將成為今后 CAD 技術發展的主流。
   
    本文將討論在 Visual C++6. 0 的集成開發環境下 ,對 SolidWorks 進行二次開發實現機械零件參數化設計的方法 ,并結合實例說明二次開發的具體實現過程。
   
    1 SolidWorks 二次開發的原理
   
    1. 1 SolidWorks 的 API 接口

   
    SolidWorks 通過 OLE(Object Linking and Embedding ,對象的鏈接和嵌入) 技術為用戶提供了強大的二次開發接口 API(Application Programming Interface ,應用程序界面) ,API 中包含了數百個可以在 Visual Basic、VBA(Excel 、Access 等) 、C、C++ 或 SolidWorks 宏文件調用的函數。SolidWorks API 接口采用面向對象的方法 ,所有的函數都是有關對象的方法或屬性。用戶通過對這些對象屬性的設置和方法的調用 ,就可以在用戶自己開發的程序中對 SolidWorks 進行各種操作控制 ,完成零件草圖的繪制和修改;零件各種特征的建立和修改;零件的特征信息、裝配信息及工程圖紙信息的提取等。
   
    1. 2 SolidWorks 二次開發的方法

   
    SolidWorks 的API 接口分為兩種:一種是基于 OLE Automation 的 IDispatch 技術 ;另一種開發方式是基于 Windows 基礎的 COM(Object Model ,組件對象模型) 。
   
    基于 OLE Automation 的 IDispatch 技術作為快速開發的手段 ,一般常用于 VB、Delphi 編程語言的接口 ,通過 IDispatch 接口暴露對象的屬性和方法 ,以便在客戶程序中使用這些屬性并調用它所支持的方法。此種技術只能開發 EXE形式的程序 ,所開發的 CAD 系統不能直接加掛在 SolidWorks 系統界面下 ,無法實現與 SolidWorks 系統的集成。
   
    COM 是一種組件開發技術 ,是 Microsoft 公司提出的并被大多數公司支持的一種標準協議 ,它建立了一個軟件模塊同另一個軟件模塊的連接 ,當這種連接建立之后 ,兩個模塊之間就可以通過接口來進行通訊。COM接口更為簡潔高效 ,這種技術可以使用最多的 SolidWorks API函數。實際上 SolidWorks 系統本身是用 VC++編寫的 ,所以使用 VC++語言通過 COM 接口開發 ,可以實現對 SolidWorks 底層的開發并且代碼的執行效率高。
   
    通過 VC編寫基于 COM的動態連接庫 DLL(Dynamic Link Library)文件 ,能直接在 SolidWorks 的界面下添加菜單、工具條等 ,如圖 1 所示。在注冊表中注冊成功即可成為 SolidWorks 的插件 ,實現了與 SolidWorks 的無縫集成 ,是眾多二次開發方法中的首選 ,以下結合參數化設計銅合金軸承保持架擠壓模墊套的實例 ,介紹 DLL 程序的開發方法。
   
    2 DLL 程序的具體實現過程
   
    2. 1 DLL 的創建

   
    SolidWorks 公司提供了制作 DLL 文件的向導 ,利用向導模板可方便快捷地生成 DLL 文件。具體步驟是:首先從 SolidWorks 公司的網站下載制作動態連接庫的向導文件"SWizard. awx",將其拷貝至 VC++安裝目錄下的 Common MSDev98 Template 文件夾 ,這時 VC 新建工程項中會出現"SolidWorks Add InAppWizard"向導。選擇此向導輸入項目名 3DCAD 后單擊 Next ,在 Step 1 of 2 選擇 SolidWorks 的安裝路徑 ,除了 Overload WNDPROC of ModelView復選框 ,選中其他所有復選框 ,然后單擊 Next 進入 Step 2 of 2 ,選中 Create Sample Feature Manager 和 ViewRegister Add - In at compile time 復選框后單擊 Finish 即可完成DLL 工程的創建。
   
    2. 2 DLL 中添加資源的方法

   
    在動態鏈接庫中 ,當用戶需要添加自己的資源如對話框時 ,應明確指出在什么時候使用自己的資源 ,否則 SolidWorks 系統分不清那些是由系統控制的資源 ,那些是由用戶控制的資源 ,會發生沖突導致程序運行錯誤。避免資源沖突的方法是在使用自己資源前調用 Afx Get Resource Handle 函數保存當前的資源 ,然后調用 Afx Set Resource Handle 函數把當前資源設置成新的資源 ,當使用完自己的資源后 ,再調用Afx Set Resource Handle 函數恢復先前已保存的資源。創建本程序的運行界面時 ,首先用對話框編輯器創建對話框模板資源 ,如圖 2 所示加入所需控件 ,再用 Class wizard 為對話框生成 CTestDlg類(基類為 CDialog) ,并加入所需的成員變量 ,相關代碼如下:
   
    / / 保存當前系統資源
    HINSTANCE saver = AfxGetResourceHandle() ;
    / / 把當前資源設置成新的資源
    AfxSetResourceHandle(AfxGetResourceHandle() ) ;
    CDlg1 dlg ; / / 聲明一個對話框類
    If (int n = dlg. DoModal () = = IDOK) ; / / 按下繪圖按鈕后繪圖


    {
    drawdt( ) ; / / 參數化繪制墊套三維圖的自定義函數
    }
    / / 恢復先前已保存的系統資源的句柄
    AfxSetResourceHandle(saver) ;


久久国产色av_国产人妻777人伦精品hd_欧美 国产 日本_好吊色欧美一区二区三区
国产高清自拍一区| 国内一区在线| 国产精品333| 国产精品免费视频久久久| 欧美一区视久久| zzjj国产精品一区二区| 国产精成人品localhost| 久久精品国产精品亚洲色婷婷| 一区高清视频| 国产一区二区在线免费| 日韩av观看网址| 成人a在线视频| 无码少妇一区二区三区芒果| 久久综合给合久久狠狠色| 蜜桃日韩视频| 97精品国产97久久久久久春色| 日韩最新av在线| 日本精品免费视频| 久久久久久综合网天天| 色综合影院在线观看| 91麻豆精品秘密入口| 欧美激情亚洲国产| 国产精品自拍首页| 欧美人交a欧美精品| 国产精品一区二区三区久久| 欧美精品在线视频观看| 国产视频一区二区不卡| 精品久久久久久中文字幕动漫| 国内成+人亚洲| 欧美成人第一页| 国产欧美日韩精品在线观看| 国产精品久久一区| 国产在线观看一区二区三区| 色综合天天狠天天透天天伊人| 国产伦精品一区二区三区四区免费| 九九九热精品免费视频观看网站| 国产天堂视频在线观看| 中文字幕黄色大片| 91观看网站| 人妻无码视频一区二区三区| 国产精品偷伦视频免费观看国产| 精品日韩美女| 夜夜爽www精品| 久久男人av资源网站| 日韩欧美一区三区| 国产精品裸体瑜伽视频| 国产一区二区高清不卡| 美日韩精品免费视频| 成人免费视频97| 日日噜噜夜夜狠狠久久丁香五月| www欧美日韩| 国产在线久久久| 又粗又黑又大的吊av| 久久婷婷国产综合尤物精品| 青青草国产精品| 国产精品看片资源| www.av蜜桃| 日本不卡一区二区三区四区 | 蜜桃传媒视频第一区入口在线看 | 99久久伊人精品影院| 日本在线视频www色| 国产精品入口免费视频一| 国产精品专区h在线观看| 无码人妻精品一区二区蜜桃百度| 国产成人精品日本亚洲| 国产一区喷水| 日本国产高清不卡| 精品蜜桃一区二区三区| 久久免费视频在线| 欧美日韩系列| 亚洲一区二区三区加勒比| 日日狠狠久久偷偷四色综合免费| 国产精品自拍小视频| 日韩久久久久久久久久久久| 欧美日韩爱爱视频| 视频直播国产精品| 国产精品一区二区三区久久久| 日本十八禁视频无遮挡| 欧美精品亚州精品| 日韩中文字幕视频| 成人黄色av网站| 欧美日韩亚洲一区二区三区在线观看 | 久久久久久久久久久久av| 免费av在线一区二区| 丁香六月激情婷婷| 精品国产乱码一区二区三区四区| 久久人人爽人人爽人人av| 国产日本欧美一区二区三区| 欧美专区在线视频| 亚洲精品乱码久久久久久自慰| 国产精品欧美久久久| 国产激情美女久久久久久吹潮| 国产日韩欧美影视| 欧美日韩电影一区二区三区| 懂色av粉嫩av蜜臀av| 欧美精品久久久久久久久| 精品国产一区二区三区久久| 久久精品午夜福利| av片在线免费| 国产精品专区第二| 国产一区二区自拍| 免费在线观看一区二区| 日本久久中文字幕| 亚洲成人第一| 夜夜爽www精品| 欧美成人一二三| 久久久成人精品| 国产成人精品免费视频| 91精品国产综合久久香蕉 | 在线国产99| 精品国产av无码一区二区三区| 久久久97精品| 精品国产一区二区三区四区在线观看| 国产精欧美一区二区三区| 97人人模人人爽人人喊38tv| 国产日韩欧美精品| 免费看污久久久| 男女超爽视频免费播放| 欧美在线www| 奇米四色中文综合久久| 热久久这里只有| 日韩激情视频一区二区| 欧美专区第一页| 欧美日韩亚洲一区二区三区在线观看| 色香蕉在线观看| 欧美一区二区三区精美影视| 亚洲福利av| 色一情一乱一伦一区二区三区| 日日摸日日碰夜夜爽无码| 日本一级黄视频| 日韩精品在线观看av| 欧美中文字幕在线播放| 欧美日韩国产免费一区二区三区| 男女猛烈激情xx00免费视频| 免费久久久久久| 国产在线观看一区二区三区| 国产在线播放不卡| 国产伦精品一区二区三区在线| 成人伊人精品色xxxx视频| 成人国产精品一区| 97精品在线观看| 久久人妻精品白浆国产| 久久久久久久久网| 久久精品人人做人人爽| 国产精品极品美女在线观看免费| 国产精品成人v| 一区二区免费在线观看| 欧美精品久久一区二区| 亚洲va欧美va在线观看| 日韩欧美一区二区三区四区五区| 欧美日韩二三区| 国产乱码精品一区二区三区日韩精品| av在线不卡一区| 久久久久久久久久婷婷| 久久精品国产一区二区电影| 精品国产一区二区三区四区精华| 亚洲最大的av网站| 日本在线视频www色| 欧美 日韩精品| www亚洲国产| 久久久久久久久久婷婷| 国产精品久久久久久久久久三级 | 高清视频欧美一级| 久久婷婷国产精品| 精品国产一区二区在线| 久久夜色精品国产欧美乱| 亚洲高清精品中出| 欧美一区二区中文字幕| 国产日韩欧美另类| 91精品久久久久久久久中文字幕| 久久超碰亚洲| 久久综合免费视频| 午夜免费日韩视频| 激情五月开心婷婷| 97碰在线视频| 久热国产精品视频| 亚洲精品日韩精品| 欧美在线一区二区三区四| 国产精品亚发布| 国产成人啪精品视频免费网 | 久久人人97超碰精品888| 国产精品偷伦免费视频观看的 | 午夜啪啪福利视频| 男女超爽视频免费播放| 99热国产免费| 国产精品美女主播| 欧美一级片免费在线| 国产一区亚洲二区三区| 久久久久九九九| 国产aaa精品| 欧美一级二级三级| av在线亚洲男人的天堂| 国产精品视频1区| 无码人妻aⅴ一区二区三区日本| 国产又黄又猛视频| 久久久久久中文字幕| 一区二区视频在线观看| 欧美不卡在线一区二区三区| 久久无码高潮喷水| 在线播放 亚洲|