• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Catia Automation API工程圖模板定制方法

      2015-06-15 15:47:00張虎志
      數字技術與應用 2015年3期
      關鍵詞:工程圖二次開發(fā)

      張虎志

      摘要:在CATIA三維模型生成的工程圖中,當圖紙出現變動,如需要加長、縮小時,或者使用其他工程圖模板,工程圖圖框與標題欄均需要重復繪制,效率十分低下,為了解決這一問題,提出了用CATIA Automation API實現工程圖框圖框與標題欄自動生成的技術?;贑ATIA Automation API的宏程序使用VB語言好學易用,適合用來對CATIA做簡單的自動化定制開發(fā)。本文詳細闡述了工程圖模板定制技術的方法和過程,詳解了定制方法所涉及到的CATIA對象以及相關的函數方法,并根據企業(yè)需求給出了工程圖模板定制的程序設計的流程圖,并依據該流程圖定制出符合企業(yè)自身的工程圖模板自動生成宏程序,解決了工程圖圖框與標題欄均需要重復繪制的問題,為其他類似的工程圖模板定制提供了參考。

      關鍵詞:CATIA 二次開發(fā) 工程圖

      中圖分類號:TP391.72 文獻標識碼:A 文章編號:1007-9416(2015)03-0000-00

      1前言

      CATIA V5是CATIA是法國達索系統(tǒng)公司的優(yōu)秀的CAD/CAE/CAM一體化軟件,是目前航空業(yè)使用最廣、影響最大的三維設計類軟件。目前,國內航空企業(yè)尚無法徹底擺脫二維圖,大多處于三維設計與二維制造局面,因此三維數模與二維圖紙相關聯的要求越來越明顯,使用CATIA生成二維圖成了必然手段。

      雖然CATIA中允許自動生成工程圖模板,但其格式并不滿足企業(yè)的相關標準規(guī)定。為使圖紙規(guī)范化,以提高工作效率,我們需重新定制工程圖模板。

      常規(guī)的CATIA工程圖模板定制方法有兩種:定制模板文件和定制宏程序。

      1.1定制模板文件

      該方法通過在Sheet BackGround模式下用草圖工具繪制圖幅、圖框和標題欄然后另存為CATDrawing格式模板文件,然后直接用Insert BackGround命令直接調用即可。該法簡單易行,但由于實際工作中圖紙允許加寬,導致模板數量繁多,工作量巨大,且不一定滿足不同時期的需求;更換模板極為不便,需要重新調整視圖位置,自動化程度不高。

      1.2定制基于Catia Automation API的宏程序

      該方法是通過定制宏程序,調用CATIA繪圖命令,進行圖幅、圖框和標題欄的繪制。由于程序中使用變量代替圖紙寬度,并自動讀取當前圖幅參數,因此,圖框的大小和標題欄的位置可根據圖幅大小不同自動調節(jié)。只要定制一套程序,使用所有圖幅,用戶操作簡單,自動化程度高。

      本文將采用定制宏語言的方法定制工程圖模板,以實現工程圖模板的自動化。

      2定制宏程序方法

      2.1 Automation API簡介

      Automation API主要基于CATIA預先編制好的開放函數,通過其豐富的API函數即可完成絕大多數CATIA的自帶功能,不需要開發(fā)人員具有高深的編程技巧,也不需要開發(fā)人員對CATIA軟件驅動層和內核編碼規(guī)則有深入的了解,而且基于VB的開發(fā)語言好學易用,使得CATIA的初級二次開發(fā)簡單且較為實用。在CATIA Automation中,所有的API都已經被封裝成了對象驅動模式,其主根位于Application之中,并逐層分解為3種形式的對象,即Documents、Cameras、Windows[1],其中工程圖宏程序定制所用的對象在Documents中。

      2.2相關對象、方法及屬性介紹

      CATIA提供了用于Workbench的對象,這些對象提供屬性和方法與外部進程交互。工程圖中主要使用以下對象:

      (1)Drawingsheet 圖紙對象;

      (2)DrawingView 視圖對象;

      (3)DrawingText 文本對象;

      (4)Factory2D 繪圖對象;

      (5)Selection 選擇對象。

      各對象之間有層次之分,調用子對象必須先調用父對象。例如調用Factory2D對象的CreateLine方法,必須先獲取Drawingsheets對象(假設已經進入Drafting模塊),然后依次獲取Drawingsheet、DrawingViews、DrawingView對象[2],才能調用它。對象層次關系如圖1所示

      定制模板主要用到以下方法:

      (1)Factory2D.CreateLine() 繪制直線;

      (2)DrawingTexts.Add() 添加文本。

      2.3宏程序結構介紹

      在CATIA Drafting模塊中提供了一個名為Frame and Title Block命令,用于管理背景視圖的宏程序[3]。該類宏主要包括以下幾類子程序:

      (1)Sub CATMain()。主程序,程序由此開始執(zhí)行。

      (2)以Sub CATDrw_開頭。顯示在Manage Frame and Title Block界面下,供用戶調用,

      (3)以Sub開頭,但沒有CATDrw_前綴。僅供其他程序調用,無返回值。

      (4)以Function開頭。賦值函數,有返回值。

      3定制工程圖宏程序具體實現

      3.1需求分析

      根據企業(yè)工程圖定制的需要,我們需要實現以下功能;

      (1)自動根據圖幅大小生成相應的模板;

      (2)在圖面大小更改時自動更換模板大小,并保留原有的明細信息;

      (3)刪除整個模板的的操作,插入其他類型的模板。

      因此對應三個功能,需要三個功能函數,即以Sub CATDrw_開頭的函數:

      Sub CATDrw_Creation( targetSheet as CATIABase )

      Sub CATDrw_Resizing( targetSheet as CATIABase )

      Sub CATDrw_Deletion( targetSheet as CATIABase )

      3.3完成效果圖

      完成開發(fā)完成后,通過CATIA調用寫好的CATStript,選擇Creation方法能自動根據選擇的圖紙的

      圖框創(chuàng)建完成后,由于種種原因,需要對工程圖圖紙大小進行變動時,使用Resizing方法可以保證所有輸入的數據自動移到新模板中,如圖5

      使用Deletion函數則能刪除創(chuàng)建工程圖模板,讓圖紙能插入其他的模板。

      4 結語

      本文詳細闡述了基于CATIA Automation API的工程圖模板定制方法和步驟,并且結合企業(yè)工程圖的特點,編制基于CATIA Automation API的工程圖輔助設計程序,CATIA工程圖中調用該宏程序來自動生成工程圖模板。使工程圖設計工作簡單化、程序化,減輕設計者的重復性勞動強度。

      參考文獻

      [1] 胡挺,周立軍.CATIA二次開發(fā)技術基礎.電子工業(yè)出版社,2006年.

      [2] V5Automation. 法國達索公司,2006年.

      [3] 詹友剛.CATIA V5工程圖教程.機械工業(yè)出版社,2013年.

      猜你喜歡
      工程圖二次開發(fā)
      通過三維軟件PDF自適應轉換實現工藝卡片二維工程簡圖的高清顯示
      “3+4”人才培養(yǎng)模式下本科階段“工程圖學”課程的優(yōu)化設計
      面向工程認證的機制專業(yè)工程圖學(一)課程教學探索
      淺談基于Revit平臺的二次開發(fā)
      甘肅科技(2020年20期)2020-04-13 00:30:02
      西門子Operate高級編程的旋轉坐標系二次開發(fā)
      MASTERCAM工程圖出圖功能研究
      淺談Mastercam后處理器的二次開發(fā)
      模具制造(2019年3期)2019-06-06 02:11:02
      分析三維CAD建模技術在工程圖學中的應用
      電子測試(2018年10期)2018-06-26 05:54:22
      Micaps3.2 版本二次開發(fā)入門淺析
      西藏科技(2015年12期)2015-09-26 12:13:51
      ANSYS Workbench二次開發(fā)在汽車穩(wěn)定桿CAE分析中的應用
      汽車零部件(2014年5期)2014-11-11 12:24:32
      铜鼓县| 高淳县| 集安市| 六枝特区| 城步| 赤峰市| 九龙坡区| 新河县| 甘孜县| 盐城市| 保山市| 兴和县| 咸丰县| 商南县| 林口县| 贵州省| 平顺县| 汝阳县| 蒲江县| 乌兰浩特市| 蓝山县| 定兴县| 松溪县| 孟州市| 民勤县| 邮箱| 罗城| 阿图什市| 河北区| 和顺县| 黄浦区| 信丰县| 宣城市| 民县| 扶沟县| 大石桥市| 嫩江县| 昭通市| 安达市| 绵竹市| 屏东县|