我想看一级黄色大片_久久亚洲国产精品一区二区_久久精品免视看国产明星_91久久青青青国产免费

您的位置:網站首頁 > CAD新聞

SolidEdge中屬性塊定義技術

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

  0 引言

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

  1 AutoCAD中屬性塊的定義技術

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

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

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

  2 SolidEdge二次開發接口

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

  

  圖1 SolidEdge對象層次關系

  2.1組對象及其特征

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

  void AddToGroup()

  void RemoveFromGroup();

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

  Dispatch*Item([in]VARIANT Index);

  Lines2d*Lines2d();

  Circles2d*Circles2d();

  利用VB調用SolidEdgeCOM接口定義組的一般方法為:

  Dim oGroups As SolidEdgeFrameworkSupport.Groups

  Dim oGroup As SolidEdgeFrameworkSupport.Group

  Dim oSelectSet As SelectSet

  Set oGroups=oSheet.Groups

  Set oSelectSet=m-oActiveDoc.SelectSet’構建選擇集

  …

  Set oGroup=oGroups.Add

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

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

  Dim oPropSets As SolidEdgeFramework.AttributeSets

  Dim oPropSet As SolidEdgeFramework.AttributeSet

  Set oPropSets=oBlock.AttributeSets

  Set oPropSet=oPropSets.Add(”UserProperty”)

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

  2.2符號對象

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

  3 SolidEdge中塊技術實現

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

   JPG

  圖2類關系

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

  

  3.1創建塊

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

  Dim oGroups As SolidEdgeFrameworkSupport.Groups

  Dim oGroup As SolidEdgeFrameworkSupport.Group

  Dim oSelectSet As SeleetSet

  Set oGroups=oSheet.Group

  Set oSelectSet=m -oActiveDoc.SelectSet’構建選擇集

  Set oGroup=oGroups.Add

  

  圖3塊的創建過程

  3.2插入塊

  插入塊包括插入當前文件中的塊和從外部文件創建塊。在SolidEdge中不存在塊操作,因此必須構建插入塊的相關方法:

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

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

  

  圖4插入塊算法

  

  圖5插入塊實現

  3.3修改塊

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

  3.4塊屬性定義

  創建屬性定義的過程如下,使用AddAttribute方法在塊上創建屬性定義。這個方法需要輸入6個參數:屬性文字的高度、屬性模式、提示字符串、插入點、標記字符串和默認屬性值,如表1所示。具體操作方式如下,為ExtBlock對象創建兩個屬性集合:①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應用實例

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

  

  圖6明細表編輯

  5結束語

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


我想看一级黄色大片_久久亚洲国产精品一区二区_久久精品免视看国产明星_91久久青青青国产免费

            美女视频黄频大全不卡视频在线播放 | 日韩欧美电影一区| 日韩主播视频在线| 成人黄色在线网站| 亚洲一区日韩精品中文字幕| 国产精品久久久久久久久果冻传媒| 精品一区二区日韩| 黄页视频在线91| 国产成人一区在线| 成人国产视频在线观看| av网站免费线看精品| 国产91精品一区二区| 91啦中文在线观看| 国产精品欧美久久久久无广告| 日本不卡不码高清免费观看| 在线看日韩精品电影| 国产精品私人自拍| 国产一区在线不卡| 日韩精品中文字幕一区二区三区 | 国产精品伦一区二区三级视频| 久久精品国产一区二区| 欧美丝袜第三区| 国产精一区二区三区| 波多野洁衣一区| 日本伊人色综合网| 国产精品一区二区三区四区| 99天天综合性| 欧美日韩高清影院| 久久亚区不卡日本| 另类小说综合欧美亚洲| 欧美国产成人在线| 欧美一区午夜视频在线观看| 欧美性猛片xxxx免费看久爱| 日韩欧美国产成人一区二区| 久久久久国产精品厨房| 国产一区在线观看麻豆| 亚洲国产另类av| 欧美激情一区不卡| 欧美一区二区三区视频在线观看| 国产精品18久久久久久久久久久久| 一区二区三区四区乱视频| 91精品国产入口| 中文在线一区二区| 欧美日韩激情一区二区三区| 久久精品男人的天堂| 午夜欧美电影在线观看| 99久久精品免费看国产 | av亚洲精华国产精华精华 | 亚洲人成7777| 国产原创一区二区| 欧美日韩免费不卡视频一区二区三区| 久久精品一区蜜桃臀影院| 无码av中文一区二区三区桃花岛| 成人午夜视频网站| 精品国产91洋老外米糕| 亚洲成人激情社区| 91丨九色丨国产丨porny| 欧美变态tickle挠乳网站| 欧美一区二区在线播放| 亚洲天堂网中文字| 免费日本视频一区| 国产日韩欧美一区二区三区乱码| 91蜜桃在线观看| 日韩精品专区在线影院观看| 色屁屁一区二区| av在线一区二区三区| 青青草97国产精品免费观看无弹窗版| 欧洲精品中文字幕| 激情综合色综合久久综合| 国产精品毛片a∨一区二区三区 | 色琪琪一区二区三区亚洲区| 五月天激情综合网| 国产三级欧美三级| 91国模大尺度私拍在线视频 | 日韩一区二区三区精品视频| bt7086福利一区国产| 国产成人鲁色资源国产91色综| 激情五月婷婷综合| 九一九一国产精品| 久久se精品一区精品二区| 日本强好片久久久久久aaa| 日日摸夜夜添夜夜添国产精品| 亚洲电影中文字幕在线观看| 有码一区二区三区| 亚洲人亚洲人成电影网站色| 1024亚洲合集| 亚洲免费观看高清完整版在线观看| 成人午夜精品一区二区三区| 国产在线观看免费一区| 国产一区二区三区在线观看精品 | 91在线云播放| 欧美色视频在线观看| 欧美在线播放高清精品| 欧美精品在线一区二区三区| 欧美体内she精高潮| 337p亚洲精品色噜噜| 欧美电影免费观看高清完整版在线 | 欧美变态tickling挠脚心| 精品久久久久99| 久久香蕉国产线看观看99| 久久久国产精品不卡| 国产精品卡一卡二| 亚洲免费在线观看| 亚洲一区二区精品3399| 五月天婷婷综合| 精品影视av免费| 福利一区二区在线| 亚洲成人av中文| 免费的国产精品| 国产精品88av| 色www精品视频在线观看| 欧美福利一区二区| 久久精品夜夜夜夜久久| 亚洲精品国产成人久久av盗摄| 亚洲成人一区在线| 国产综合色产在线精品| 成人av网址在线观看| 欧美三级资源在线| 欧美xxxxxxxx| 亚洲人成亚洲人成在线观看图片 | 日韩免费一区二区| 中文在线一区二区 | 一区二区三区视频在线看| 日本系列欧美系列| 成人午夜在线免费| 欧美欧美欧美欧美首页| 国产亚洲一本大道中文在线| 一区二区三区在线免费视频| 美女爽到高潮91| 91蜜桃传媒精品久久久一区二区| 日韩一区二区免费视频| 国产精品乱人伦| 另类小说综合欧美亚洲| 99久久99久久精品国产片果冻 | 99re视频这里只有精品| 日韩欧美色综合网站| 亚洲黄一区二区三区| 国产麻豆日韩欧美久久| 欧美日韩一区二区三区高清| 久久精品一区二区三区不卡牛牛 | 亚洲无线码一区二区三区| 成人综合在线视频| 欧美一级午夜免费电影| 亚洲欧美欧美一区二区三区| 狠狠色丁香婷婷综合久久片| 欧美三级日韩三级国产三级| 国产目拍亚洲精品99久久精品| 日韩二区在线观看| 在线精品视频免费播放| 国产精品免费久久| 国产老女人精品毛片久久| 欧美一区二区三区在线电影| 一区二区欧美精品| av电影在线观看完整版一区二区| www国产精品av| 青青草国产精品97视觉盛宴 | 成人黄色片在线观看| 日韩欧美国产一区二区三区| 一区二区在线观看免费视频播放| 国产传媒欧美日韩成人| 日韩视频一区二区三区在线播放| 亚洲最新视频在线观看| 成人午夜在线视频| 国产日韩欧美高清| 精品无人区卡一卡二卡三乱码免费卡 | 秋霞电影网一区二区| 日本精品视频一区二区| 自拍偷拍欧美精品| 波多野结衣91| 国产精品毛片无遮挡高清| 国产精品理论在线观看| 国产成人精品一区二区三区四区| 欧美一区二区成人| 天堂影院一区二区| 777奇米四色成人影色区| 亚洲福利一区二区| 欧美日韩中文字幕一区| 亚洲一区二区不卡免费| 欧美视频你懂的| 亚洲电影激情视频网站| 欧美日韩国产综合一区二区| 亚洲大片在线观看| 欧美日韩大陆一区二区| 香蕉成人啪国产精品视频综合网| 欧美日韩一区二区在线观看| 亚洲成人高清在线| 777久久久精品| 麻豆国产精品官网| 久久婷婷成人综合色| 国产精品91一区二区| 国产精品美女久久福利网站| 91啪九色porn原创视频在线观看| 中文字幕在线不卡一区二区三区 | 麻豆91精品91久久久的内涵| 精品毛片乱码1区2区3区| 国产美女在线观看一区| 日本一区二区视频在线观看| 99国产精品久久久久久久久久久| 亚洲欧美视频在线观看| 欧美日韩dvd在线观看|