久久国产色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_欧美 国产 日本_好吊色欧美一区二区三区
国产中文字幕二区| 天堂√在线观看一区二区| 亚洲一二三区精品| 麻豆精品视频| 欧美一级淫片播放口| 国产精品久久一区主播| 国产女主播一区二区三区| 亚洲中文字幕无码av永久| 浮妇高潮喷白浆视频| 亚洲三区四区| 久久亚洲春色中文字幕| 亚洲综合在线播放| 亚洲成人第一| 91精品国产成人| 麻豆蜜桃91| 日本不卡一区| 萌白酱国产一区二区| 国产精品日韩电影| 91美女福利视频高清| 国产中文字幕在线免费观看| 免费高清在线观看免费| 国产制服91一区二区三区制服| 日本久久久久久| 懂色一区二区三区av片| 国产精品亚洲天堂| 国产精品高潮呻吟视频| 91久久久精品| 成人精品视频久久久久| 91传媒免费视频| 精品一区二区久久久久久久网站| 国产精品视频26uuu| caoporn国产精品免费公开| 国产网站免费在线观看| 69国产精品成人在线播放| 久久福利视频导航| 久久久国产91| 亚洲精品成人久久久998| 欧美 日韩精品| 91精品国产电影| 久久亚洲精品网站| 日本网站免费在线观看| 黄色av网址在线播放| 国产精品18久久久久久麻辣| 国产精品久久99久久| 日韩人妻精品无码一区二区三区 | 三年中国中文在线观看免费播放| 国产区一区二区三区| 久久riav| 欧美极品第一页| 欧美日韩国产高清视频| 久久av中文字幕| 国产精品一级久久久| 色综合色综合网色综合| 欧美日韩在线观看一区| 久久久99爱| 欧美日韩在线高清| 国产在线精品一区二区三区》| 日韩精品电影网站| 日韩在线视频一区| 久久6精品影院| 91免费看片在线| 日韩欧美一级在线| 久久国产精品久久久| 国产精品99久久久久久久久| 人体精品一二三区| 久久99久久久久久久噜噜| 97久久国产亚洲精品超碰热| 日韩欧美电影一区二区| 国产精品高潮呻吟久久av无限| 99久久免费国| 日本精品久久电影| 精品免费日产一区一区三区免费| 国产高清在线一区二区| 国产日韩第一页| 日韩欧美亚洲在线| 国产99视频精品免费视频36| 久久久久久久一区二区| 成人福利网站在线观看11| 日韩精品福利视频| 一区二区精品在线观看| 国产精品视频男人的天堂| 99免费在线观看视频| 蜜臀av.com| 日本伊人精品一区二区三区介绍| 精品久久久久久无码中文野结衣| 久久综合久久综合这里只有精品| 精品日本一区二区三区在线观看| 午夜老司机精品| 久久91亚洲精品中文字幕| 日韩在线视频播放| 国产精品一码二码三码在线| 欧美午夜精品久久久久久蜜 | 婷婷精品国产一区二区三区日韩| 国产精品偷伦一区二区| 久久久免费高清电视剧观看| 国产日韩在线亚洲字幕中文| 日韩视频免费在线播放| 亚洲色欲久久久综合网东京热| 久久久97精品| 国产成人欧美在线观看| 日韩女在线观看| 国产啪精品视频| 九九久久综合网站| 日本免费高清一区二区| 国产精品秘入口18禁麻豆免会员| 国产成人精品免费视频| 隔壁老王国产在线精品| 欧美a在线视频| 日韩免费中文专区| 欧美精品久久久久a| 青青久久av北条麻妃黑人| 国产精品精品视频一区二区三区| 欧美中文在线观看国产| 日韩在线视频网| 国产男女猛烈无遮挡91| 黄色一级片黄色| 欧美一区亚洲一区| 日本新janpanese乱熟| 一区二区三区电影| 欧美激情视频在线观看| 国产精品成人av在线| 国产精品免费一区二区三区| 日韩在线视频免费观看| 国产成人精品久久二区二区 | 欧美一区二区激情| 性色av一区二区三区在线观看| 欧美激情精品久久久久久黑人 | 日本女人高潮视频| 欧美一区二区视频17c| 亚洲7777| 日韩**中文字幕毛片| 日本欧美在线视频| 日韩在线国产| 日本在线视频不卡| 欧美一区二区三区艳史| 日本中文字幕在线视频观看| 日韩亚洲不卡在线| 欧美亚洲成人精品| 韩国一区二区av| 国产一区二区三区奇米久涩| 国精产品一区一区三区视频| 国产欧美精品久久久| 国产精品一线二线三线| 91精品国产综合久久香蕉922| 7777精品视频| 日韩中文在线中文网三级| 久久视频中文字幕| 久久成人18免费网站| 最新中文字幕久久| 午夜精品久久久久久久久久久久 | 日韩av免费看| 欧美伊久线香蕉线新在线| 黄色一级片黄色| 福利视频一区二区三区四区| 国产精欧美一区二区三区| 国产成人激情小视频| 国产精品无码av在线播放| 久久综合久久88| 亚洲**2019国产| 秋霞无码一区二区| 国产日韩一区二区三区| 国产精品亚洲天堂| 久久综合一区二区三区| 久久九九全国免费精品观看| 欧美人与性动交| 水蜜桃亚洲精品| 黄色av免费在线播放| caoporn国产精品免费公开| 久久久久一区二区| 精品国产免费久久久久久尖叫| 亚洲一区二区在线免费观看| 青青在线视频免费| 国产精品永久在线| 久久草.com| 欧美精品午夜视频| 色哺乳xxxxhd奶水米仓惠香| 欧美在线视频a| 国产精品小说在线| 久久久久久久久久久av| 精品久久久久久综合日本| 日日摸日日碰夜夜爽av| 国产综合第一页| 91精品久久久久久久久中文字幕| 久久九九热免费视频| 亚洲精品高清视频| 国精产品一区一区三区有限在线| 久久久亚洲综合网站| 国产精品海角社区在线观看| 亚洲精品永久www嫩草| 免费中文日韩| 91免费在线观看网站| 久久九九精品99国产精品| 午夜精品久久久久久99热| 国产自偷自偷免费一区| 国产成人在线一区| 国产99久久久欧美黑人| 欧美一区在线直播| 久久亚洲高清| 欧美激情一级欧美精品| 欧美精彩一区二区三区|