• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 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
    遂川县| 吉安市| 盘山县| 泊头市| 绥中县| 璧山县| 曲沃县| 霍山县| 金门县| 旬阳县| 颍上县| 阳谷县| 卫辉市| 衢州市| 扶绥县| 新化县| 新平| 郓城县| 高唐县| 龙江县| 叶城县| 阜城县| 高要市| 新竹县| 湖口县| 香格里拉县| 阜宁县| 华亭县| 龙胜| 中西区| 广安市| 岗巴县| 高密市| 龙口市| 建宁县| 克什克腾旗| 泌阳县| 普兰县| 涟水县| 蒲城县| 民县|