亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Creo 二次開發(fā)實現(xiàn)工程圖快速轉(zhuǎn)換PDF

        2020-12-22 10:36:44孟志強(qiáng)
        關(guān)鍵詞:二次開發(fā)模型設(shè)計

        孟志強(qiáng)

        (公安部第一研究所, 北京100048)

        0 引言

        隨著數(shù)字化設(shè)計、現(xiàn)代制造技術(shù)的發(fā)展,CAD(計算機(jī)輔助設(shè)計)、CAM(計算機(jī)輔助制造)、CAE(計算機(jī)輔助工程)技術(shù)得到了迅速普及和極大發(fā)展。 Creo 是PTC 公司推出的CAD/CAM/CAE 設(shè)計軟件,提供了目前最全面、集成度最高的產(chǎn)品開發(fā)環(huán)境, 在工業(yè)設(shè)計和機(jī)械設(shè)計領(lǐng)域得以廣泛的應(yīng)用。 除此之外, 市面上還有諸多其他CAD/CAM/CAE 軟 件, 比 如UG、CATIA、SOLIDWORKS、MasterCAM 等等。各設(shè)計部門、加工廠家采用的設(shè)計軟件不盡相同, 各單位間直接采用3D 模型進(jìn)行溝通交流還存在模型格式統(tǒng)一的現(xiàn)實困難, 目前階段還是不可避免的需要通過二維工程圖紙進(jìn)行交流。

        PDF 是Portable Document Format 的縮寫, 即可移植文檔格式,是一種獨立于應(yīng)用程序、硬件、操作系統(tǒng)的方式呈現(xiàn)文檔的文件格式。 每個PDF 文件包含固定布局的平面文檔的完整描述,包括文本、字形、圖形以及其它需要顯示的信息。 而PDF 文件可以不依賴操作系統(tǒng)以及顯示終端,可方便閱讀、打印和存儲。 而且PDF 文件進(jìn)行權(quán)限設(shè)置以后,可以很好的保證文件的完整性,防止他人隨意篡改。因此將工程圖紙轉(zhuǎn)化為PDF 文件,既可以保護(hù)知識產(chǎn)權(quán),又可以方便使用不同設(shè)計軟件的設(shè)計人員、生產(chǎn)人員、管理人員之間交流交互,尤其是當(dāng)設(shè)計部門異地指導(dǎo)加工生產(chǎn)時。 而且傳統(tǒng)對圖紙進(jìn)行存檔保存需要采取曬印藍(lán)圖的方式,既費時也費力,而采用PDF 文件的形式進(jìn)行電子化保存?zhèn)浞?,則更為方便快捷。

        Creo 軟件自帶的將工程圖以保存副本的方式轉(zhuǎn)化成PDF 格式文件的方法,僅僅能實現(xiàn)單張工程圖的轉(zhuǎn)換,而以筆者所在設(shè)計部門進(jìn)行的設(shè)計開發(fā)工作, 一套設(shè)備圖紙少則兩三百張,多則上千張,采用此種方法過于麻煩費事。為此本文中筆者利用Creo 提供的二次開發(fā)工具Creo Parametric TOOLKIT 進(jìn)行二次開發(fā),設(shè)計一款程序快速便捷地將Creo 工程圖轉(zhuǎn)化為PDF 文檔。

        1 工程圖快速轉(zhuǎn)化PDF

        1.1 環(huán)境的搭建

        Creo Parametric TOOLKIT 是PTC 公司為Creo Parametric 定制的開發(fā)工具包, 使用面向?qū)ο蟮腃 語言編程,提供了用于Creo 設(shè)計軟件底層資源調(diào)用的函數(shù)庫和頭文件,使客戶具有根據(jù)自己的具體需求定制擴(kuò)展Creo Parametric 功能的能力。

        本文使用的CAD 設(shè)計平臺為Creo 5.0, 采用與Creo 5.0 契合度較高的Visual Studio 2015 進(jìn)行程序開發(fā)。 通過建立MFC DLL 項目,包含TOOLKIT 提供的頭文件,添加TOOLKIT 提供的庫文件, 配置項目屬性的附加依賴項以及忽略特定庫等, 采用同步模式進(jìn)行二次開發(fā), 設(shè)計程序,編寫代碼,實現(xiàn)主體功能。

        1.2 程序設(shè)計

        如圖1 所示,為實現(xiàn)Creo 工程圖快速轉(zhuǎn)化為PDF 文檔,本程序設(shè)計思路如下:打開一個模型,進(jìn)行模型屬性判定,如果是零件(.prt 格式文件),則打開零件同名圖紙,輸出零件同名PDF,存入指定文件夾,結(jié)束程序;如果是組件(.asm 格式文件),則對該組件進(jìn)行遍歷,如果組件中各子零組件(子零件和子組件)還未輸出同名PDF,則加載各子零組件同名圖紙,輸出各子零組件同名PDF,存入指定文件夾,再進(jìn)行標(biāo)示,表示已輸出同名PDF;當(dāng)整個組件完成遍歷時,結(jié)束程序,從而實現(xiàn)一鍵將組件模型關(guān)聯(lián)的所有的工程圖快速轉(zhuǎn)換為PDF 文檔。

        圖1 程序流程圖

        1.3 界面設(shè)計

        利用TOOLKIT 提供的函數(shù)ProMenubarMenuAdd 可以在Creo 菜單欄中新增菜單項、 利用函數(shù)ProCmdActionAdd 設(shè)置新增菜單項的動作響應(yīng)、 利用ProMenubarmenuPushbuttonAdd 在新增菜單項下添加子菜單項,并且在ZhuanPDF.txt 文檔中進(jìn)行菜單欄顯示設(shè)置, 具體相關(guān)函數(shù)使用如下所示。

        如圖2a 所示為Creo 初始啟動時菜單欄選項卡情況,圖2b 為啟動了二次開發(fā)的輔助應(yīng)用程序后的菜單欄選項卡情況,系統(tǒng)會生成一個TOOLKIT 的選項卡,在其“工具”菜單欄之下,生成設(shè)計的“批量轉(zhuǎn)PDF”子菜單;而為了應(yīng)用方便,可以在Creo 快速啟動欄中,增添TOOLKIT 命令的按鈕,可自行編輯按鈕圖像,如圖2c 所示,可以更方便快捷地調(diào)用二次開發(fā)加載的應(yīng)用程序。

        圖2a Creo 初始菜單

        圖2c 設(shè)置快速啟動項

        1.4 程序?qū)崿F(xiàn)

        由圖1 程序流程圖可見, 程序主體由一個遍歷過程來實現(xiàn),通過遍歷Creo 當(dāng)前打開的模型,依次對遍歷訪問的子零組件進(jìn)行相應(yīng)的操作。 對模型進(jìn)行遍歷可通過TOOLKIT 提供的遍歷函數(shù)ProSolidFeatVisit 來實現(xiàn),其中參數(shù)User_action_parameter_tiqu 為遍歷主函數(shù)體,而參數(shù)UserAsmCompFilter 為過濾函數(shù),用以設(shè)置遍歷條件,具體函數(shù)形式如下所示。

        ProSolidFeatVisit ((ProSolid)model,user_action_parameter_tiqu,UserAsmCompFilter,&appdata);

        User_action_parameter_tiqu (ProFeature *feature,ProError status,ProAppData appdata);

        UserAsmCompFilter ( ProFeature *feature,ProAppData app_data);

        通過調(diào)用函數(shù)ProMdlDataGet 獲得模型的名字、類型、存儲路徑、版本號等信息,從而得到需要轉(zhuǎn)化為PDF的工程圖紙名稱, 如下所示p_asm 為模型句柄,mdldata為ProMdldata 結(jié)構(gòu)體,變量name 存儲模型名字。

        ProMdlDataGet(p_asm,&mdldata);

        CString name = mdldata.name;

        而通過函數(shù)ProMdlLoad 來加載當(dāng)前模型句柄指向部件的同名圖紙,做好輸出同名PDF 文檔的準(zhǔn)備。

        status=ProMdlLoad(wfile,type,booltrue,&draw);

        通過函數(shù)ProPDFoptionsIntpropertySet 和ProPDFoptionsBoolpropertySet 進(jìn)行PDF 輸出的參數(shù)諸如輸出層、線型、 顏色、 字體、 分辨率等等的設(shè)置; 然后通過函數(shù)ProPDFExport 輸出PDF 文檔到指定的位置。

        ProPDFoptionsAlloc(&options);

        ProPDFoptionsIntpropertySet (options,

        1.5 實現(xiàn)案例

        如圖3a 所示,為展示效果以某部件A18615L_1_4_1_3.ASM 為例, 從模型樹中可以看出, 該組件為三級結(jié)構(gòu)。 通過運行二次開發(fā)的程序,按照遍歷順序,依次從上往下輸出組件以及各子零組件工程圖的同名PDF 文檔,如圖3b 所示。

        圖3a 模型樹

        圖3b 輸出PDF

        2 結(jié)論

        筆者以Visual Studio 2015 為開發(fā)環(huán)境, 利用Creo 自帶的API 開發(fā)包TOOLKIT,對Creo 進(jìn)行二次開發(fā),生成輔助應(yīng)用程序。 通過對打開的模型進(jìn)行遍歷,實現(xiàn)一鍵快速準(zhǔn)確的將工程圖紙批量轉(zhuǎn)化為PDF 文檔,通過實際使用證明了該方法的有效性及準(zhǔn)確性,可以大大提高工作效率。

        猜你喜歡
        二次開發(fā)模型設(shè)計
        一半模型
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計的漸近分布
        淺談基于Revit平臺的二次開發(fā)
        甘肅科技(2020年20期)2020-04-13 00:30:02
        淺談Mastercam后處理器的二次開發(fā)
        模具制造(2019年3期)2019-06-06 02:11:02
        瞞天過?!律O(shè)計萌到家
        西門子Easy Screen對倒棱機(jī)床界面二次開發(fā)
        設(shè)計秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設(shè)計叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        3D打印中的模型分割與打包
        人妻无码∧V一区二区| 国产精品亚洲一区二区在线观看| 236宅宅理论片免费| 亚洲色偷拍一区二区三区| 亚洲一区二区三区视频免费| 国产精品人成在线观看免费| 最新亚洲人成网站在线观看 | 免费国产黄网站在线观看视频| 被群cao的合不拢腿h纯肉视频| 久久国产精99精产国高潮| av高清视频在线麻豆免费观看| 亚洲欧洲日产国码av系列天堂| 亚洲国产精品日韩av专区| 国产精品毛片久久久久久l| 日本一二三区在线视频观看| 麻豆精品导航| 亚洲精品国产成人| 久久综合给合久久狠狠狠9| 国产精品国产三级国产专区50| 偷看农村妇女牲交| 亚洲碰碰人人av熟女天堂| 淫妇日韩中文字幕在线| 91麻豆精品国产91久久麻豆| 黑森林福利视频导航| 可以免费在线看黄的网站| 日韩美女人妻一区二区三区 | 免费观看在线一区二区| 超级乱淫片国语对白免费视频| 少妇久久久久久被弄到高潮| 欧美亚洲国产人妖系列视| 自拍情爱视频在线观看| 无码熟妇人妻av在线影片最多| 2019年92午夜视频福利| 视频女同久久久一区二区三区 | 手机看片久久第一人妻| 久久99热久久99精品| 国产成人亚洲合集青青草原精品| 中国亚洲av第一精品| 中文字幕人妻中文| 精品无码av不卡一区二区三区| 精品国产一区二区av麻豆不卡|