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

您的位置:網(wǎng)站首頁 > CAD新聞

SolidEdge中屬性塊定義技術(shù)

時間:2011-02-26 10:04:18 來源:

  0 引言

  UGS公司推出SolidEdge產(chǎn)品是一款優(yōu)秀的中端的三維CAD產(chǎn)品,目前在國內(nèi)已經(jīng)廣泛使用,其三維設計功能已經(jīng)得到用戶的認可。其工程圖設計模塊所提供的二維設計功能雖然也很豐富,但其使用習慣與AutoCAD不盡相同,同時其二次開發(fā)技術(shù)還不為大家熟悉,因此SolidEdge上的應用程序開發(fā)相對較少。在實際的項目開發(fā)過程中發(fā)現(xiàn)SolidEdge本身沒有提供塊和屬性塊的功能。本文在分析AutoCAD中的塊和屬性塊定義的方法和技術(shù)之后,結(jié)合實際項目開發(fā)需要提出了基于SolidEdge產(chǎn)品的屬性塊定義技術(shù)。詳細的介紹在SoHdEdge環(huán)境中如何實現(xiàn)塊和屬性塊的定義、塊屬性的定義、信息存儲技術(shù),并給出了主要算法過程的UML描述對開發(fā)基于SolidEdge產(chǎn)品的應用系統(tǒng)開發(fā)具有一定參考價值。

  1 AutoCAD中屬性塊的定義技術(shù)

  在AutoCAD中將塊定義為繪制在幾個圖層上的不同特性對象的組合。這些組合后的對象作為一個整體將作為新的獨立對象使用,這些方便了用戶重復使用對象。當塊被打散后,塊的生命周期結(jié)束,但是塊內(nèi)的各個對象仍可以獨立存在。塊技術(shù)可以廣泛應用于符號庫和圖庫等軟件的開發(fā)過程中。

  AutoCAD中對塊操作包括塊實體本身的操作和塊屬性的操作。塊實體的處理包括:①創(chuàng)建塊:主要是定義塊對象。②修改塊:添加和刪除幾何實體,對集合內(nèi)部對象進行編輯和修改。③塊的應用:將塊插入到當前的圖形中。

  塊屬性的處理包括:①塊屬性的處理:添加必要的屬性信息到塊對象,便于用戶屬性信息的存儲和編輯,此類屬性為顯示信息,方便用戶編輯。②擴展屬性的處理:擴展屬性主要用于存儲用戶自定義屬性,此類信息多為隱式信息,一般用作系內(nèi)部信息的存儲,對一般用戶不可見。

  2 SolidEdge二次開發(fā)接口

  在SolidEdge中沒有提供專門的塊定義功能,但是其提供了組Group和符號Symbol的定義功能,兩種對象均可用于存儲圖元集合。可以利用這兩個對象為基礎構(gòu)建塊。SolidEdge提供了基于COM的二次開發(fā)接口,可以應用VB、VC、VB.NET或VC.NET,以及Java等多種工具進行二次開發(fā)。圖1為SolidEdge提供的COM對象的層次關(guān)系。

  

  圖1 SolidEdge對象層次關(guān)系

  2.1組對象及其特征

  由圖1可知組Group在SolidEdge各級對象中的地位,其用于文檔內(nèi)部的圖元分組,例如直線、圓、尺寸標注、剖面線,以及組都可以作為集合元素添加到組中。通過API接口分析,Group對象不存儲圖元的具體信息,僅僅存儲圖元對象的指針,并提供了如下的接口用于組內(nèi)對象的添加與刪除:

  void AddToGroup()

  void RemoveFromGroup();

  同時提供通用的Item方法來訪問組內(nèi)對象,同時通過如下的方法分類訪問組內(nèi)的圖元集合對象:

  Dispatch*Item([in]VARIANT Index);

  Lines2d*Lines2d();

  Circles2d*Circles2d();

  利用VB調(diào)用SolidEdgeCOM接口定義組的一般方法為:

  Dim oGroups As SolidEdgeFrameworkSupport.Groups

  Dim oGroup As SolidEdgeFrameworkSupport.Group

  Dim oSelectSet As SelectSet

  Set oGroups=oSheet.Groups

  Set oSelectSet=m-oActiveDoc.SelectSet’構(gòu)建選擇集

  …

  Set oGroup=oGroups.Add

  對于組對象可以添加用戶自定義的屬性信息,在交互狀態(tài)下SolidEdge允許用戶輸入如下文本類型的自定義屬性信息。

  通過COM接口可以定義更加復雜的屬性信息,用戶可以構(gòu)建自定義的屬性集合,并可以控制屬性信息的讀取。SolidEdge中對象的屬性信息是通過屬性集集合AttributeSets來存儲,在屬性集集合AttributeSets中包括多個屬性集AttributeSet,SolidEdge系統(tǒng)提供的對象屬性一般存儲在序號為1-5的集合屬性集中。用戶可以調(diào)用AttributeSets提供的Add方法構(gòu)建信息的屬性集合,典型過程如下:

  Dim oPropSets As SolidEdgeFramework.AttributeSets

  Dim oPropSet As SolidEdgeFramework.AttributeSet

  Set oPropSets=oBlock.AttributeSets

  Set oPropSet=oPropSets.Add(”UserProperty”)

  在每個屬性集內(nèi)部可以構(gòu)建用戶自定義的屬性(Attribute),屬性對象包括Name、Type和Value這3個屬性。其中Name為字符串,Value為Variant類型,因此可以存儲各種類型的數(shù)據(jù)。

  2.2符號對象

  符號(Symbol2d)對象在SolidEdge中代表另外一類集合對象,其主要用于存儲外部文件構(gòu)成的圖元集合。通過Symbol2d的SourccDoc屬性可獲得源文件的相關(guān)信息。符號集(Symbols)提供了兩種方法將外部文件插入到當前的文檔中,其一是Add方法,其二為InsertSymbolAsGeometry。后一種方法將生成一個新組對象,而不是符號對象。從上述的分析看,以組Group對象為基礎實現(xiàn)內(nèi)部塊對象,以符號實現(xiàn)外部塊比較方便。

  3 SolidEdge中塊技術(shù)實現(xiàn)

  從SolidEdge本身提供的組對象為基礎構(gòu)建新的類ExtBlock(如圖2所示,其中SolidEdge表示為SolidEdge本身提供的對象定義),此類繼承于Group類,類基本屬性如表1所示。

   JPG

  圖2類關(guān)系

  表1 自定義塊(ExtBlock)類基本屬性

  

  3.1創(chuàng)建塊

  選擇當前圖形文件中的圖元構(gòu)建選擇集合,以此為基礎創(chuàng)建組對象,并將其轉(zhuǎn)化為自定義塊對象,并添加塊屬性。圖3為塊的創(chuàng)建過程。具體的實現(xiàn)方法如下:

  Dim oGroups As SolidEdgeFrameworkSupport.Groups

  Dim oGroup As SolidEdgeFrameworkSupport.Group

  Dim oSelectSet As SeleetSet

  Set oGroups=oSheet.Group

  Set oSelectSet=m -oActiveDoc.SelectSet’構(gòu)建選擇集

  Set oGroup=oGroups.Add

  

  圖3塊的創(chuàng)建過程

  3.2插入塊

  插入塊包括插入當前文件中的塊和從外部文件創(chuàng)建塊。在SolidEdge中不存在塊操作,因此必須構(gòu)建插入塊的相關(guān)方法:

  InsertBlock(InsertionPoint,Name,XScale,YScale,ZScale,Rotation[,Password])

  圖4給出了插入塊的基本算法,圖5給出了具體實現(xiàn)過程。從外部文件創(chuàng)建塊時,需要利用Symbols對象提供的InsertSymbolAsGeometry方法,來創(chuàng)建Group對象,然后以此對象為基礎建立塊對象。

  

  圖4插入塊算法

  

  圖5插入塊實現(xiàn)

  3.3修改塊

  利用Group對象的現(xiàn)有方法ungroup()為基礎實現(xiàn)ExtB-lock對象的分解方法Explode(),塊分解后即可重新定義。

  3.4塊屬性定義

  創(chuàng)建屬性定義的過程如下,使用AddAttribute方法在塊上創(chuàng)建屬性定義。這個方法需要輸入6個參數(shù):屬性文字的高度、屬性模式、提示字符串、插入點、標記字符串和默認屬性值,如表1所示。具體操作方式如下,為ExtBlock對象創(chuàng)建兩個屬性集合:①ExtBaseProperty:存儲塊的基本屬性;②ExtUserProperty:存儲塊的用戶自定義屬性。如下為以VB代碼為例說明基本屬性的建立方法:

  Dim oPropSets As SolidEdgeFramework.AttributeSets

  Dim oPropSet As SolidEdgeFramework.AttributeSet

  Dim oProp As SolidEdgeFramework.Attribute

  Set oPropSets=oBlock.AttributeSets

  If oGraph2d.IsAttnibuteSetPresent(”MySEExtPmperty”)=True

  Then

  oPropSets.Remove(”MySEExtProperty”)

  End If

  Set oPropSet=oPropSets.Add(”MySEExtProperty”)

  Call oPropSet.Add(”ID”,seLong)

  Call oPropSet.Add(”class”,seStringUnicode)

  Call oPropSet.Add(”type”,seLong)

  oPropSet.Item(”index”).Value=ID

  oPropSet.Item(”class”).Value=”extBlock”

  oPropSet.Item(”type”).Value=1001

  3.5塊屬性讀取

  在塊的引用中,用戶可以使用如下公共的方法來讀取和保存塊的屬性:

  SetExtAttribute(oGraph2d As Object,csName As String,vtValue As Variant) As Long

  GetExtAttribute(oGraph2d As Object’csName As String,vtValueAs Variant)As Long

  其中csName為屬性名稱,vtValue為屬性值。

  4應用實例

  應用本文提出的屬性塊技術(shù),實現(xiàn)了基于SolidEdge軟件的標準圖紙自動生成系統(tǒng),包括標準圖幅選擇與自動繪制,標題欄的自動繪制和編輯,明細表的自動生成和編輯。圖6給出了明細表編輯的界面。目前此系統(tǒng)已經(jīng)成功應用到企業(yè)實際工作當中,顯著提高了工程圖紙繪制的標準化程度和工作效率,并為以后的BOM信息匯總和提取打下了基礎。

  

  圖6明細表編輯

  5結(jié)束語

  本文探討了在SolidEdge環(huán)境下實現(xiàn)屬性塊技術(shù)的方法和過程,從而彌補了SolidEdge軟件本身的功能不足,并應用UML給出具體的設計過程和部分VB代碼。對基于SotidEdge的標準件庫、符號庫等應用系統(tǒng)的開發(fā)具有一定的指導意義。


久久国产色av_国产人妻777人伦精品hd_欧美 国产 日本_好吊色欧美一区二区三区
91美女片黄在线观看游戏| 国产欧美日韩精品在线观看| 国产精品久久久久久亚洲调教| 国产厕所精品在线观看| 91av网站在线播放| 久久久亚洲国产天美传媒修理工| 福利视频久久| av网址在线观看免费| 99久久久精品免费观看国产| 成人av中文| 91久久在线视频| 91国内在线视频| 国产成人亚洲精品| 日日噜噜噜夜夜爽亚洲精品| 久久精品国产精品亚洲| 色噜噜狠狠狠综合曰曰曰| 国产精品视频xxx| 国产精品国产精品国产专区蜜臀ah| 国产精品乱子乱xxxx| 久久亚洲精品一区| 中文字幕在线中文字幕日亚韩一区 | 久久精品无码中文字幕| 久久国产手机看片| 久艹在线免费观看| 久久精品国产一区二区电影| 国产精品久久亚洲7777| 欧美精品久久久久| 少妇性饥渴无码a区免费| 日本亚洲导航| 麻豆视频成人| 91精品一区二区| 精品国产一区二区三区久久狼黑人 | www.av一区视频| 久久久爽爽爽美女图片| 日韩在线免费观看视频| 国产精品久久久久久久美男| 欧美极品第一页| 日韩伦理一区二区三区av在线| 黄色三级中文字幕| av免费精品一区二区三区| 久久久久久久久久久免费| 国产精品入口夜色视频大尺度| 不卡av电影院| 日韩av电影在线网| 国产日产亚洲精品| 久久精品欧美| 精品九九九九| 日本久久91av| 国产精品专区在线| www国产精品视频| 亚洲欧洲精品在线观看| 黄www在线观看| 久久噜噜噜精品国产亚洲综合| 国产精品日日摸夜夜添夜夜av | 中国成人亚色综合网站| 三区精品视频| 国产片侵犯亲女视频播放| 色婷婷综合久久久久| 中文字幕无码精品亚洲35| 黄页网站大全在线观看| 国产成人亚洲精品| 亚洲一区不卡在线| 国产综合福利在线| 色妞欧美日韩在线| 无码免费一区二区三区免费播放| 国产一区一区三区| 久久久国产视频91| 日本黄网站色大片免费观看| 福利精品视频| 精品国产乱码久久久久久郑州公司 | 国产日产欧美a一级在线| www日韩欧美| 视频一区二区三区在线观看| 国产精品一区二区三| 国产精品高清网站| 欧美亚洲激情在线| 久久久久久久午夜| 日韩av大片免费看| 成人国产在线看| 色综合久久久久久中文网| 免费国产成人看片在线| 久久99精品久久久久久久青青日本 | 一区二区三区我不卡| 国产专区一区二区| 国产精品大陆在线观看| 韩国欧美亚洲国产| 国产精品入口免费视| 欧美一区免费视频| 久久精品国产亚洲精品2020| 人体精品一二三区| 国产v综合ⅴ日韩v欧美大片| 欧美一区二区三区四区在线| 国产精品97在线| 性色av一区二区咪爱| 久久人人97超碰人人澡爱香蕉| 亚洲国产欧美日韩| 久热免费在线观看| 色999五月色| 久久久久久香蕉| 热门国产精品亚洲第一区在线| 久久精品国产精品国产精品污| 三区精品视频| 日韩在线中文字幕| 欧美日韩在线高清| 国产精品大片wwwwww| 国产一级特黄a大片99| 久久国产精品久久久久| 国产精品一区二区三区久久| 亚洲专区国产精品| 国产成人精品久久| 欧美日韩国产高清视频| 精品国产一区二区三区四区精华 | 操人视频欧美| 亚洲欧美久久234| 久久久欧美精品| 高清欧美性猛交xxxx| 亚洲精品国产精品国自产| 国产成人自拍视频在线观看| 日产日韩在线亚洲欧美| 丝袜亚洲欧美日韩综合| 国产资源第一页| 亚洲一区二区免费| 久久免费高清视频| 欧美 日韩 国产一区| 欧美人与性动交a欧美精品| 久久久天堂国产精品女人| 欧美在线播放cccc| 美女av一区二区三区 | 久久精品91久久香蕉加勒比| 日韩专区第三页| 国产精品日韩一区二区| 国产日产欧美一区二区| 亚洲精品欧美日韩专区| 北条麻妃一区二区三区中文字幕| 国产在线一区二区三区播放| 午夜欧美性电影| 国产精品美女主播| 91高清视频免费| 麻豆传媒一区二区| 无码人妻精品一区二区蜜桃百度| 久久精品最新地址| 97精品一区二区视频在线观看 | 福利视频久久| 欧美日韩高清免费| 亚洲最大成人网色| 精品久久久91| …久久精品99久久香蕉国产| 蜜桃传媒一区二区| 日本一区二区视频| 久久99视频免费| 国产精品网址在线| av片在线免费| 国产亚洲天堂网| 欧美与黑人午夜性猛交久久久 | 国产中文字幕日韩| 午夜精品久久久久久99热| 国产精品成人一区| 日韩中文字幕视频| 69国产精品成人在线播放 | caoporn国产精品免费公开| 任我爽在线视频精品一| 亚洲精品一区国产精品| 精品久久免费观看| 国产成人精品综合久久久| 久久久水蜜桃| 99久久国产综合精品五月天喷水| 蜜桃视频日韩| 欧美综合激情网| 日日橹狠狠爱欧美超碰| 亚洲最大的av网站| 久久99热这里只有精品国产| 久久激情视频久久| 久久久久久久久一区| 久久一区二区三区欧美亚洲| 97欧美精品一区二区三区| 国产日韩一区二区| 蜜臀av.com| 国内精品免费午夜毛片| 欧美国产一区二区在线| 日本欧美精品在线| 欧美一区二区三区……| 亚洲人精品午夜射精日韩| 欧美日韩国产二区| 欧美片一区二区三区| 精品国产无码在线| 久久成人亚洲精品| 精品国产一区三区| 久色乳综合思思在线视频| 精品免费国产| 久久99精品久久久久久青青91| 久久国产精品亚洲| 精品国产第一页| 免费91麻豆精品国产自产在线观看| 欧美另类69精品久久久久9999| 久久在线精品视频| 精品久久一二三| 欧美精品xxx| 亚洲欧洲精品一区二区三区波多野1战4| 国产999视频| 在线视频不卡一区二区|