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

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

CAD中實現工程圖樣自動化轉換的研究

時間:2009-12-24 13:49:22 來源:
 工程技術人員在相互交流過程中因所使用的評議和標準不同,彼此傳遞 的圖樣必須經過轉換才能使用。其中絕大部分工作是對其中的標注和注釋進行 轉換,簡單說來就是把其中的文字做一 個替換。如果圖樣較多,人工操作很繁瑣,而且由于人工操作時個人水平和習 慣的不同,也會導致轉換結果不一致的問題。因此有必要開發一個圖樣轉換工具來替代人工操作。

  一、總體設計

  此圖形工具主要針對圖形中的文字做轉換,但涉及到圖形文字字體選擇和設置的問題。另外,為了達到準確一致的要求,還必須對替換的標準字典進行管理。因此,這個軟件的總體結構如圖1所示。主要功能模塊的定義如下。

  (1)圖形設置:通過樣式管理器、字體設置和標注設置這三種方式對圖形定義的字體和標注形式進行管理,以保 證圖樣能顯示中文、字體和標注符合相關標準。

  ( 2 ) 圖形轉換:實現對圖形中 文字的替換。可選擇不同的字典,按 字典中的條目對字字進行“翻譯”。

  (3)字典管理:用以創建、修改字典。用戶創建英漢字典、標準對照、材 料對照字典后,就可通過“圖形轉換” 操作對圖樣進行轉換。

  (4)系統設置:主要方便用戶對系統 相關文件的管理。

  此圖形工具插入到AutoCAD環境中, 用戶界面是在C A D中加入菜單(如圖2所 示),再通過對話框的形式進行操作。

  二、概要設計

  (1)圖形設置模塊;主要利用VBA與AutoCAD模型對象之間的良好接口,通過對話框的形式與用戶交互,方便實現圖形的文本樣式和標注樣式。按照總體設計規劃并結合用戶操作習慣設計出如下幾個對話框(見圖3),即可進入詳細設計階段。

  (2)文本轉換模塊:主要完成對圖形中所有文字的替換,如圖4所示。這些文字可能是單行文本、多行文本、屬性和標注文字,為了程序的結構清晰,設計Get Text和Set Text兩個通用過程處理。 另外,圖形中還含有塊參照且可能這些塊是嵌套的,因此將文本轉換設計為一個遞歸過程。

  (3)字典操作:是本程序的重頭,鑒于面向對象的優越性,通過構造一 個字典類來實現對數據的維護和操作, 從而把與字典有關的操作全部集中到字典類上。它包含以下內容:常數:

  dicmax——定義字典允許的最大的詞條數,根據運行效率、內存占用和實際需求設定其數值;屬性:Count——字典實際詞條數,data——詞條;方法:

  Clear——清空字典,Add——添加詞條,Update——更新詞條,Search——查找,Cov——實現文字翻譯,L o a d——裝入字典,Save——保存字典。

  (4)系統設置:主要指定系統工作路 徑、字體文件路徑、字典文件路徑,并 保存在Windows注冊表中。

  三、詳細設計

  詳細設計是對概要設計的內容進行編碼,具備有一定的編程能力且熟悉V B A 和AutoCAD模型對象就可順利完成,其中 字典類的代碼如下。

  ‘數據

  Const dicMAX = 1000 ‘ 定義最大詞條數,根據實際需要和系統性能定#p#分頁標題#e#

  Private DicData() As String ‘詞條數組

  Private dicCount As Integer ‘詞條總數

  ‘只讀屬性data

  Property Get data() As Variant data = DicData

  End Property

  ‘只讀屬性count

  Property Get count() As Integer count = dicCount

  End Property

  ‘A d d操作,成功返回T r u e,e n g— 原文,chn—譯文

  Function Add(eng As String, chn

  As String) As Boolean

  If dicCount >= dicMAX Then Add = False: Exit Function ‘如果詞條數超過 最大值則添加失敗

  R e D i m P r e s e r v e D i c D a t a ( 1 , dicCount) ‘重定義詞條數組大小

  DicData(0, dicCount) = eng DicData(1, dicCount) = chn dicCount = dicCount + 1

  Add = True

  End Function

  ‘ Update 操作,成功返回True,eng—原文,chn—譯文,Index—索引

  Function Update(index As Integer,

  eng As St ring, chn As St ring) As

  Boolean

  If index >= dicMAX Or index < 0

  Then Update = False: Exit Function DicData(index, 0) = eng DicData(index, 1) = chn

  Update = True

  End Function

  ‘Search操作,成功返回查到的詞 條索引,失敗返回0

  Function Search(eng AsString, ByRef chn As String) As Integer

  For i = 0 To dicCount – 1

  ‘通過一個循環逐條比較

  If DicData(i, 0) = eng Then

  If DicData(i, 1) = "" Then

  Search = 1 ‘ 查到原文,沒有對應譯文,返回1

  Else

  Search = 2 ‘ 查到原文且有對應譯文,返回2

  chn = DicData(i, 1) End If

  Exit Function

  End If

  Next

  Search = 0‘沒有查到原文,返回0

  End Function

  ‘內部過程MyReplace,是Cov的 主過程,提取出來方便以后修改或升級

  Private Function MyReplace(source As String, find As String, replace As String, op As Integer) As String

  ls = Len(source)

  lf = Len(find)

  Dim k As Integer

  k = I n S t r ( 1 , s o u r c e , f i n d , vbTextCompare) ‘在原文本中查找要查找的子串

  While (k > 0)

  Select Case op ‘ 按op的值

  替換查找的子串

  Case 1:

  MyReplace = Left(source, k - 1) &replace ‘直接替換 Case 2:

  MyReplace = Left(source, k - 1) &"(" & replace & ")"言之‘替換并在兩邊加 注括號

  Case 3:

  MyReplace = Left(source, k + lf - 1)& "(" & replace & ")" ‘保留原文并加括號 End Select

  source = Right(source, ls - k + 1 - lf)

  k= In Str(k+lf, source, find, vbTextCompare) 繼續查找下一處

  Wend

  MyReplace = MyReplace & source

  End Function

  ‘Cov操作,s—原文本,op—翻譯選 項;返回譯文,沒有翻譯時譯文=原文本

  Function Cov(s As String, op As

  Integer) As String

  Cov = s

  For i = 0 To dicCount - 1

  Cov = MyReplace(Cov, DicData(0, i), DicData(1, i), op)

  Next

  End Function

  ‘Load操作,讀入字典文件,fn— 字典文件的全路徑和名稱

  Function Load(fn As String) As

  Boolean

  On Error GoTo l1

  Open fn For Input As #1

  ‘打開文件

  Dim e As String, c As String

  While Not EOF(1)#p#分頁標題#e#

  Input #1, e, c‘讀入詞條 Add e, c ‘加入字典 Wend

  Close 1 ‘關閉文件 Load = True

  Exit Function l1:

  Load = False ‘如遇錯誤,返 回失敗

  End Function

  ‘S a v e操作,寫出字典文件,f n— 字典文件的全路徑和名稱

  Function Save(fn As String) As

  Boolean

  On Error GoTo l1

  Open fn For Output As #1

  ‘打開文件,準備寫入

  For i = 0 To dicCount - 1

  Write #1, DicData(0, i), DicData(1, i)

  ‘寫詞條 Next

  Close 1 關閉文件 Save = True

  Exit Function l1:

  Save = False ‘ 如 遇 錯 誤,返回失敗

  End Function

  ‘Clear操作,清空

  Sub Clear()

  dicCount = 0

  ‘詞條計數值勤0

  ReDim DicData(1, 0)

  ‘詞條數組清空 End Sub

  ‘ 初 始 操 作 , 將 dicCount值0,(在VB中 可省略)

  Private Sub Class_

  Initialize()

  dicCount = 0

  End Sub

  四、軟件測試

  這個軟件是筆者設計的一個小軟件,通過調試,軟件能正常運行實現工程圖樣轉換。

  五、結論

  軟件完成后,試用的效果實用、方便、快捷,維護方便。由此可以得出以下體會:

  ◎個人進行C A D二次開發來創建一 個簡單實用的圖形工具是完全能夠實 現的;

  ◎個人用V B A進行C A D二次開發效率 高,可維護性強,不存在與AutoCAD各版 本不兼容的問題;

  ◎通過對話框的形式實現軟件與用 戶的交互很直觀,也很方便。


久久国产色av_国产人妻777人伦精品hd_欧美 国产 日本_好吊色欧美一区二区三区
国产一区二区三区乱码| 国产精品一久久香蕉国产线看观看| 久久波多野结衣| 高清亚洲成在人网站天堂| 黑人中文字幕一区二区三区| 热久久精品国产| 日本中文字幕一级片| 色中色综合成人| 欧美一区二区三区综合| 午夜免费在线观看精品视频| 亚洲国产精品www| 午夜欧美大片免费观看| 亚洲一区二区三区色| 亚洲一区精彩视频| 亚洲精品一区二区三区av| 午夜精品久久久久久99热软件| 亚洲欧洲一区二区| 日韩 欧美 高清| 青青久久av北条麻妃黑人| 欧美自拍资源在线| 欧美日韩午夜爽爽| 韩日午夜在线资源一区二区| 国产又粗又长又爽视频| 国产精品专区h在线观看| 国产精品揄拍500视频| 91传媒视频免费| 久久久噜噜噜www成人网| 深夜福利91大全| 国产精品久久视频| 久久99国产精品自在自在app| 中文字幕无码精品亚洲35| 亚洲精品成人a8198a| 日本精品一区二区三区高清 久久| 日韩国产欧美精品| 黄色a级在线观看| 成人精品在线观看| 国产成人高清激情视频在线观看| www.99久久热国产日韩欧美.com| 国产精品三区www17con| 中文字幕一区二区三区四区五区人| 日产日韩在线亚洲欧美| 激情五月五月婷婷| 风间由美一区二区三区| 久久精品国产美女| 欧美精品少妇videofree| 欧美精品第一页在线播放| 午夜精品久久久久久久男人的天堂| 日韩欧美亚洲日产国| 国产一级大片免费看| 91美女福利视频高清| 久久精品国产69国产精品亚洲| 欧美激情亚洲综合一区| 日本精品中文字幕| 国产精品自拍视频| 久草热久草热线频97精品| 欧美日韩第一视频| 欧美日韩不卡在线视频| 国产欧美 在线欧美| 久久精品日韩精品| 欧美激情视频网址| 青青草成人在线| 99福利在线观看| 欧美老少配视频| 欧美视频在线第一页| 99热一区二区三区| 国产精品电影网| 日韩经典在线视频| 91久久久一线二线三线品牌| 国产精品福利久久久| 人人爽久久涩噜噜噜网站| 99三级在线| 九九热精品视频国产| 欧美视频第三页| 国产激情在线观看视频| 一区二区三区精品国产| 精品一区在线播放| 国产精品视频播放| 欧美又粗又长又爽做受| 国产二区不卡| 在线视频一区观看| 免费观看亚洲视频| 久久久精品中文字幕| 日韩国产欧美亚洲| 91精品国产色综合| 中文字幕中文字幕在线中一区高清| 欧美高清性xxxxhdvideosex| 久久av一区二区三区亚洲| 一区精品在线| 国产精品午夜视频| 久久99久久亚洲国产| 蜜桃麻豆www久久国产精品| 久久久久久九九九| 日本不卡高字幕在线2019| 久久久久久草| 日本国产中文字幕| 国产ts人妖一区二区三区| 天堂v在线视频| 国产精品12| 日韩av日韩在线观看| 久久九九视频| 日韩高清专区| 日韩在线播放一区| 日本不卡高字幕在线2019| 国产高清精品一区| 日韩国产欧美一区| 久久久黄色av| 免费看黄色a级片| 久久综合久久88| 国产精品午夜一区二区欲梦| 欧美日韩国产91| 99在线免费观看视频| 性欧美长视频免费观看不卡| 国产v亚洲v天堂无码| 欧洲在线视频一区| 国产精品视频中文字幕91| 国产中文字幕乱人伦在线观看| 久久成人一区二区| 国产日韩视频在线观看| 中文字幕日韩精品久久| 91精品中文在线| 日韩国产精品毛片| 久久国内精品一国内精品| 精品视频在线观看一区二区| 伊人久久大香线蕉精品| 久久人妻精品白浆国产| 热re99久久精品国产66热| 国产精品久久久久不卡| 国产精品小说在线| 日本欧美在线视频| 国产精品极品尤物在线观看| 成人a免费视频| 日本成人精品在线| 国产精品入口芒果| 成人精品一区二区三区| 日本一区二区在线播放| 国产精品久久..4399| 91久久夜色精品国产网站| 青青视频在线播放| 欧美激情一区二区三区在线视频观看 | 国产精品手机在线| 国产欧美精品一区二区三区介绍| 亚洲a区在线视频| 久久精品国产欧美激情| 国产欧美在线播放| 少妇精品久久久久久久久久| 国产精品网红福利| 91免费精品国偷自产在线| 欧美精品一区在线| 一区二区免费电影| 日韩中文字幕网| 99久久国产宗和精品1上映| 欧美中文字幕在线| 在线观看日韩羞羞视频| 久久精品视频99| 国产精欧美一区二区三区| 蜜桃免费区二区三区| 日韩av日韩在线观看| 中文字幕欧美人妻精品一区| 久久久久北条麻妃免费看| 91精品国产免费久久久久久| 国产亚洲欧美另类一区二区三区| 日本一本a高清免费不卡| 精品麻豆av| 国产精品无码一本二本三本色| 97公开免费视频| 国产婷婷一区二区三区| 日韩欧美一区二区三区四区| 这里只有精品66| 国产精品久在线观看| 久久视频在线观看中文字幕| 国产精品主播视频| 国内免费精品永久在线视频| 日韩免费观看网站| 天堂一区二区三区| 亚洲综合av影视| 国产精品成人免费电影| xxxx性欧美| 久久久久久久久久久福利| 91九色国产视频| 国产精品永久入口久久久| 国产无套粉嫩白浆内谢的出处| 欧美日本韩国一区二区三区| 日本毛片在线免费观看| 亚洲中文字幕无码av永久| 色综合久久88色综合天天看泰| 国产精品无码免费专区午夜| 久久久久久久久电影| 久久精品一区二区三区不卡免费视频| 国产精品一区二区免费看| 国产在线观看福利| 欧美 日韩 国产精品| 欧美亚洲另类激情另类| 欧美日韩精品综合| 欧美久久综合性欧美| 欧美大香线蕉线伊人久久| 女女同性女同一区二区三区按摩| 欧美日韩一区二区在线免费观看| 欧美在线视频一二三| 秋霞无码一区二区| 欧美日韩精品免费在线观看视频|