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

        ?

        基于CATIA/CAA的文字輸入的二次開發(fā)

        2013-10-17 03:19:00徐太花
        關(guān)鍵詞:二次開發(fā)對(duì)話框組件

        徐太花

        (天津大學(xué)軟件學(xué)院,天津 300072)

        0 引言

        利用三維建模軟件建模過程中,經(jīng)常會(huì)需要輸入文字標(biāo)識(shí)符,包括二維平面文字和三維立體文字。雖然SolidWorks、UG等建模軟件可直接輸入文字并進(jìn)行特征操作,但是在CATIA中要輸入二、三維文字的過程復(fù)雜繁瑣、不易修改,可重用性差??紤]到CATIA的應(yīng)用范圍廣,很多廠商都選用CATIA作為自己的建模工具,因此如何簡(jiǎn)單、方便、快捷、靈活地輸入文字,提高建模人員的工作效率就變得尤為重要。本文以CATIA文字為研究對(duì)象,基于CAA開發(fā)工具根據(jù)不同需求實(shí)現(xiàn)了輸入二、三維文字的功能。

        1 CAA基本概念

        1.1 CAA組件應(yīng)用架構(gòu)

        CAA是對(duì)達(dá)索(Dassault Systems)公司一系列產(chǎn)品如CATIA、ENOVIA、DELIMA等進(jìn)行二次開發(fā)的一個(gè)環(huán)境,與VS結(jié)合得比較緊密,通過API函數(shù)調(diào)用CATIA的核心程序,并進(jìn)行程序開發(fā),從而實(shí)現(xiàn)客戶程序和原系統(tǒng)的緊密集成。CAA組件應(yīng)用架構(gòu)[1-5]如圖1所示,它由一系列的模塊組成,在CAA架構(gòu)的支撐之下,Dassault Systems系統(tǒng)可像搭積木一樣建立起來,這種結(jié)構(gòu)非常適宜于系統(tǒng)的擴(kuò)充和發(fā)展[6],各個(gè)模塊之間相互關(guān)聯(lián)、滲透,極為復(fù)雜。

        CATIA V5的二次開發(fā)遵循面向?qū)ο蟮脑O(shè)計(jì)思想,構(gòu)建了完全基于COM(Component Object Mode1)組件的體系結(jié)構(gòu) PPR(Products,Process,Resource),有效地解決了其維護(hù)、管理、擴(kuò)展困難的問題,并大量使用了最新的計(jì)算機(jī)技術(shù)和標(biāo)準(zhǔn)以及軟件工程技術(shù),其中包括基于組件架構(gòu)思想的Java Bean、COM/OLE、CORBA技術(shù)和 Web技術(shù)、C++語言、Visual Basic Journaling、STEP-SDAI、XML、OpenGL 等,使得 CATIA V5具有與眾不同的鮮明特點(diǎn):數(shù)據(jù)結(jié)構(gòu)單一,各個(gè)模塊全相關(guān),某些模塊之間還是雙向相關(guān),屬于端到端的集成系統(tǒng),擁有強(qiáng)大的專業(yè)應(yīng)用擴(kuò)展能力[7]。除此之外,CAA二次開發(fā)還涉及軟件組件結(jié)構(gòu)SCI(Software Component Infrastructure)的3個(gè)基本概念:框架(Framework)、組件(Component)及對(duì)象總線(Products Bus)。

        圖1 CAA組件應(yīng)用架構(gòu)

        1.2 RADE快速應(yīng)用開發(fā)環(huán)境

        圖2 快速應(yīng)用開發(fā)環(huán)境

        CAA通過提供的快速應(yīng)用開發(fā)環(huán)境RADE(Rapid Application Development Environment)(如圖 2所示)和不同的COM組件應(yīng)用接口來幫助用戶實(shí)現(xiàn)其自身應(yīng)用??焖賾?yīng)用開發(fā)環(huán)境是一個(gè)可視化的集成開發(fā)環(huán)境,它提供完整的編程工具組。RADE以VC++為載體,開發(fā)工具完全集成在VS環(huán)境中,并且提供了一個(gè)CAA框架程序編譯器[8-11]。這個(gè)強(qiáng)大的開發(fā)平臺(tái)使開發(fā)者能夠有效地應(yīng)用工業(yè)標(biāo)準(zhǔn)工具和方法,這些方法指導(dǎo)開發(fā)者編輯和擴(kuò)展CATIA V5和ENOVIA V5的圖形用戶界面、應(yīng)用程序和數(shù)據(jù)模型。作為CAA-RADE的有益補(bǔ)充,開發(fā)環(huán)境還廣泛設(shè)置了在線編程向?qū)?,允許應(yīng)用CATIA V5和ENOVIA V5的基于組件的應(yīng)用編程接口(APIS)。

        2 CAA二次開發(fā)方法

        在CAA工程中,需要先創(chuàng)建至少一個(gè)框架,即Framework,它包含了一個(gè)工程項(xiàng)目的所有需要的元素,即一個(gè)Framework就是一個(gè)工程項(xiàng)目,是對(duì)相似的應(yīng)用集合的解決方案,但并非是完整的,需要用戶加上自己的代碼來對(duì)其進(jìn)行開發(fā)并將整個(gè)應(yīng)用完整化。Framework的體系結(jié)構(gòu)如圖3所示。

        圖3 Framework的體系結(jié)構(gòu)

        使用Framework時(shí)需要首先創(chuàng)建一個(gè)CAA工程,添加一個(gè)Framework,在其下可以添加多個(gè)Module,Module中可以自定義地添加 Component、Command、Dialog等。在工程中使用一個(gè)新的API時(shí)要將所屬的頭文件添加到工程使用文件中,將所屬M(fèi)odule添加到工程調(diào)用對(duì)應(yīng)Module下的Make文件中,將所屬Framework添加到工程Framework下的IdentityCard.h文件中,就可以實(shí)現(xiàn)對(duì)新的API的使用。

        2.1 創(chuàng)建新工程

        創(chuàng)建一個(gè)新的CAA工程,即在文件菜單下,創(chuàng)建一個(gè)新的Workspace,并添加一個(gè)Framework。具體如圖4所示。

        圖4 創(chuàng)建新的Workspace和Framework

        2.2 創(chuàng)建新的Module

        在創(chuàng)建了Workspace和Framework后,就可以添加Module,基本的開發(fā)都在Module里面進(jìn)行,步驟如圖5。在文件菜單下選擇Add CAAV5 Project里面的New Module來添加Module。

        圖5 創(chuàng)建新的Module

        2.3 加載必要的API函數(shù)

        創(chuàng)建Module后,需要向Workspace里面加載一些必要的API函數(shù),以供開發(fā)者使用。這些函數(shù)在CAA框架中已經(jīng)提供,開發(fā)人員需要通過圖6所示的步驟進(jìn)行加載操作。

        圖6 加載API

        2.4 添加資源、工具條及選框等

        在菜單中Add CAAV5 Item子項(xiàng)下可根據(jù)開發(fā)者不同需求添加自定義 Component、Dialog、Command等,以實(shí)現(xiàn)通過輸入?yún)?shù)直接用代碼生成一個(gè)三維模型,并在CATIA主窗口中顯示。

        3 CATIA文字輸入的實(shí)現(xiàn)

        3.1 三維文字的實(shí)現(xiàn)

        在CATIA中輸入文字,添加特征實(shí)現(xiàn)三維化,其前提是文字必須轉(zhuǎn)化為圖形,其開發(fā)思路為借用Drawing格式的文字輸入接口,從對(duì)話框獲取用戶輸入文字及字體、字號(hào)等相關(guān)屬性后轉(zhuǎn)為圖形格式,將轉(zhuǎn)換后的圖形粘貼于目標(biāo)草圖平面,再進(jìn)行拉伸等其他特征操作,實(shí)現(xiàn)中需要先定位CATIA中的對(duì)象,然后創(chuàng)建Drawing格式的文件,通過GetText函數(shù)獲取用戶填寫到文本框里面的文字,并通過Drawing文件的文本輸入接口將文字輸入到Drawing文件中,再轉(zhuǎn)化為DWG文件格式,接下來將DWG文件中的文字粘貼到草圖中,通過草圖文件的顯示將文字顯示出來。按照二次開發(fā)方法添加至對(duì)話框并設(shè)計(jì)對(duì)話框后,在對(duì)話框確定按鈕下添加詳細(xì)功能實(shí)現(xiàn)代碼,詳細(xì)的步驟及關(guān)鍵代碼如下所示。

        (1)獲取對(duì)于CATIA中對(duì)象的訪問。獲取過程需要遵循COM組件構(gòu)建技術(shù)的訪問規(guī)則,從高到低的順序依次得到。獲取對(duì)象的代碼如下所示,首先定位到當(dāng)前的編輯器Editor,再通過Editor獲取當(dāng)前對(duì)象的定位信息。

        (2)在獲取CATIA中對(duì)象訪問之后,需要?jiǎng)?chuàng)建Drawing格式文件,以借助文本輸入接口實(shí)現(xiàn)文字的功能。

        (3)通過GetText函數(shù)獲取用戶在指定的文本框中輸入的文本信息,設(shè)置文本的相關(guān)屬性,包括字體、字號(hào)并轉(zhuǎn)為DWG圖形格式。

        (4)將圖形文字粘貼于目標(biāo)草圖。

        (5)通過草圖的一系列顯示操作完成對(duì)文字的顯示,具體結(jié)果如圖7所示。

        圖7 三維文字結(jié)果展示

        3.2 二維平面文字的實(shí)現(xiàn)

        圖8 二維平面文字結(jié)果展示

        二維平面文字的輸入,關(guān)鍵是要文字完全依附于目標(biāo)平面。主要開發(fā)思路為借助注釋下文本輸入接口,創(chuàng)建新批注集(CATIDrwTextProperties),并在目標(biāo)平面創(chuàng)建視圖,在視圖中創(chuàng)建注解文本;通過對(duì)話框獲取用戶輸入的文字,并設(shè)置字體、字號(hào)等屬性。注釋下文本輸入接口的特點(diǎn)是會(huì)將輸入的文本與選定的平面垂直呈現(xiàn),為了實(shí)現(xiàn)直接在選定的平面上呈現(xiàn)文字,在用戶選定了平面后輸入到文本輸入接口中的平面參數(shù)是垂直于用戶選定的平面的,這樣用戶直接輸入輸出的文字就會(huì)顯示在選定平面上。在輸入文字后再利用3D預(yù)覽接口(CATNavigation3DViewer)預(yù)覽文字效果,從而提高工作效率。得出的結(jié)果展示如圖8所示。

        4 結(jié)束語

        本文介紹了CAA和CAA二次開發(fā)的基本概念,并介紹了兩種文字的文本輸入顯示方法,均是采用CAA二次開發(fā)的架構(gòu)實(shí)現(xiàn)。從本文可見,通過使用基于CAA開發(fā)工具實(shí)現(xiàn)CATIA多種文字格式輸入的功能,可以避免利用CATIA軟件手工建模的繁瑣性,提高設(shè)計(jì)效率。與其它CAD軟件相比雖然具有較高的復(fù)雜性和難度[12],但同時(shí)也可以實(shí)現(xiàn)更強(qiáng)大的功能,開發(fā)者可以根據(jù)需求自定義地開發(fā)組件模塊及功能,從而大大縮短產(chǎn)品開發(fā)周期。在此基礎(chǔ)上,可進(jìn)一步學(xué)習(xí)并深入拓展開發(fā),運(yùn)用CAA二次開發(fā)的思想和平臺(tái)、技術(shù),開發(fā)更為復(fù)雜的功能,如在曲線或曲面上的二、三維文字等的實(shí)現(xiàn),從而實(shí)現(xiàn)CAD/CAM技術(shù)的真正意義上的有效應(yīng)用。

        [1]Zhang Guangguo,Chang Zhibin,Liu Haitao.Parametric modeling for globoidal cam based on CATIA/CAA[J].Applied Mechanics and Materials:Computer-Aided Design,Manufacturing,Modeling and Simulation,2011,88-89:236-239.

        [2]李維學(xué),王仲奇,康永剛,等.基于CATIA V5二次開發(fā)的產(chǎn)品自動(dòng)裝配[J].機(jī)械制造,2010,48(1):40-43.

        [3]卞剛,鐘易成,劉德剛.基于CATIA/CAA的飛機(jī)燃油系統(tǒng)管路設(shè)計(jì)仿真[J].計(jì)算機(jī)輔助工程,2009,18(3):37-41.

        [4]蘇洪軍,王永金.基于CAA的CATIA V5二次開發(fā)方法的研究[J].機(jī)械,2008,35(s1):41-43.

        [5]康文利,張穎.CATIA二次開發(fā)技術(shù)在齒輪參數(shù)化設(shè)計(jì)中的應(yīng)用[J].機(jī)械工程師,2010(11):81-83.

        [6]周仙娥,魯墨武,趙海星.基于CAA的CATIA二次開發(fā)的研究[J].科技信息,2008(36):73-74,317.

        [7]周桂生,陸文龍.CATIA二次開發(fā)技術(shù)研究與應(yīng)用[J].機(jī)械設(shè)計(jì)與制造,2010(1):81-83.

        [8]王宗榮,左敦穩(wěn),王珉.基于CATIA的工程圖圖框、標(biāo)題欄和明細(xì)欄快速生成技術(shù)[J].中國(guó)制造業(yè)信息化,2006,35(21):58-61.

        [9]董伊鑫,席平.基于CATIA的界面二次開發(fā)[J].航空制造技術(shù),2006(12):83-86,104.

        [10]梁振剛,孫國(guó)棟.基于CATIA/CAA的飛機(jī)零部件三維參數(shù)化建模技術(shù)[J].四川兵工學(xué)報(bào),2012,33(3):72-74.

        [11]張敏,蘇蘭海,王君英.基于CAA的CATIA用戶自定義特征創(chuàng)建[J].機(jī)械設(shè)計(jì)與制造,2008(7):87-89.

        [12]何朝良,杜廷娜,張超.基于CAA的CATIA二次開發(fā)初探[J].自動(dòng)化技術(shù)與應(yīng)用,2006,25(9):37-40,49.

        猜你喜歡
        二次開發(fā)對(duì)話框組件
        無人機(jī)智能巡檢在光伏電站組件診斷中的應(yīng)用
        能源工程(2022年2期)2022-05-23 13:51:50
        新型碎邊剪刀盤組件
        淺談基于Revit平臺(tái)的二次開發(fā)
        甘肅科技(2020年20期)2020-04-13 00:30:02
        正?;謴?fù)虛擬機(jī)
        U盾外殼組件注塑模具設(shè)計(jì)
        淺談Mastercam后處理器的二次開發(fā)
        模具制造(2019年3期)2019-06-06 02:11:02
        Bootlace Worms’Secret etc.
        西門子Easy Screen對(duì)倒棱機(jī)床界面二次開發(fā)
        風(fēng)起新一代光伏組件膜層:SSG納米自清潔膜層
        太陽能(2015年11期)2015-04-10 12:53:04
        基于Pro/E二次開發(fā)的推土鏟參數(shù)化模塊開發(fā)
        亚洲第一女人天堂av| 69av在线视频| 亚洲精彩视频一区二区| 97精品熟女少妇一区二区三区| 人妻无码一区二区三区| 亚洲老妇色熟女老太| 中出高潮了中文字幕| 日本久久黄色高清视频| 无套无码孕妇啪啪| 中文无码一区二区不卡αv| 一本无码av一区二区三区| 亚洲一区二区三区精品久久| 日本三级香港三级人妇99| 亚洲精品无码av中文字幕| 巨臀中文字幕一区二区| 日本在线观看三级视频| 久久午夜福利无码1000合集| 成人网站免费大全日韩国产| 免费 无码 国产精品| 中文字幕亚洲精品专区| 亚洲国产精品无码专区在线观看| 五十路熟女一区二区三区| 日韩精品首页在线观看| 亚洲av高清天堂网站在线观看| 亚洲av永久无码精品网址| 亚洲一区二区在线| 亚洲图文一区二区三区四区| 青春草在线视频观看| 丰满老熟妇好大bbbbb| 国产精品亚洲综合色区韩国| 国产成人亚洲精品91专区高清| 国产精品亚洲lv粉色| 亚洲免费观看| 日本人妖一区二区三区| 久久不见久久见www日本网| 国产超碰人人做人人爱ⅴa| 久久se精品一区二区国产| 黄色影院不卡一区二区| 特级毛片a级毛片100免费播放 | 天天躁日日躁狠狠躁av麻豆| 成熟丰满熟妇高潮xxxxx|