【设计】CAD中实现工程图样自动化转换的研究.pdf_第1页
【设计】CAD中实现工程图样自动化转换的研究.pdf_第2页
【设计】CAD中实现工程图样自动化转换的研究.pdf_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

67CAD/CAM与制造业信息化2009年第11期 栏目主持:黎艳 投稿信箱:liy 着SolidWorks程序起动后主动加载在装配体界面,如图5所示。 这样,在装配体设计环境下,可以随时从标准件通用件库中调 用已有的标准件通用件三维模型。 六、标准件通用件库的维护 标准件、通用件在企业的应用是一个长期的过程,随着 企业的发展,会生成新的通用件,标准件也会不断地调整,因 此程序必须具有开放性,方便工程师实现标准件通用件的添加 功能(如图6所示),可以方便地添加新的标准件通用件到PDM 系统及标准件通用件库中,使不同企业的用户通过修改标准件 通用件的配置数据及属性信息而形成自己企业的标准件通用件 库。同时,当装配体向PDM数据库中提交数据时,因PDM数据 库中已有标准件通用件的数据,装配体中所有的标准件通用 件不会再提交进入PDM数据库中,这减少了集成程序运行的时 间及PDM数据库中的数据冗余。 七、结论 本文提出了基于各信息化系统集成的标准件通用件库的 开发方法,基于该方法可以实现SolidWorks与其他信息化系统 的高度集成。程序开发人员可以根据企业信息化应用系统的 特点,结合企业的编码规则及编码标准开发出企业自己的标 准件通用件三维模型库,从而提高设计效率,加强三维数据 管理,缩短产品研发生产周期。 本文通过对CAD工程图样转换过程的分析,引进计算机应用技术,提出了图样转换的自动化处理方法,能部分 或全部替代原有的人工操作,从而大大降低图样转换的劳动强度。同时也证明了用VBA进行CAD二次开发以减轻图 样处理中大量重复劳动是十分方便有效的。 CAD中实现工程图样自动化转换的研究 湖南工业职业技术学院 彭小红 工程技术人员在相互交流过程中 因所使用的评议和标准不同,彼此传递 的图样必须经过转换才能使用。其中绝 大部分工作是对其中的标注和注释进行 转换,简单说来就是把其中的文字做一 个替换。如果图样较多,人工操作很繁 琐,而且由于人工操作时个人水平和习 惯的不同,也会导致转换结果不一致的 问题。因此有必要开发一个图样转换工 具来替代人工操作。 一、总体设计 此图形工具主要针对图形中的文字 做转换,但涉及到图形文字字体选择和 设置的问题。另外,为了达到准确一致 的要求,还必须对替换的标准字典进行 管理。因此,这个软件的总体结构如图1 所示。主要功能模块的定义如下。 (1)图形设置:通过样式管理器、 字体设置和标注设置这三种方式对图形 定义的字体和标注形式进行管理,以保 证图样能显示中 文、字体和标注 符合相关标准。 ( 2 ) 图 形 转 换:实现对图形中 文字的替换。可选 择不同的字典,按 字典中的条目对字 字进行“翻译”。图1 功能模块图2 操作菜单 (3)字典管理:用以创建、修改字 典。用户创建英汉字典、标准对照、材 料对照字典后,就可通过“图形转换” 操作对图样进行转换。 (4)系统设置:主要方便用户对系统 相关文件的管理。 此图形工具插入到AutoCAD环境中, 用户界面是在CAD中加入菜单(如图2所 示),再通过对话框的形式进行操作。 二、概要设计 (1)图形设置模块;主要利用VBA与 AutoCAD模型对象之间的良好接口,通过 本文索引号:122本文索引号:122 数字化设计. in d d 6 72 0 0 9 . 1 1 . 2 5 9 : 1 9 : 1 1 A M 68 Digital Design 数字化设计 对话框的形式与用户交互,方便实现图 形的文本样式和标注样式。按照总体设 计规划并结合用户操作习惯设计出如下 几个对话框(见图3),即可进入详细设 计阶段。 (2)文本转换模块:主要完成对图形 中所有文字的替换,如图4所示。这些文 字可能是单行文本、多行文本、属性和 标注文字,为了程序的结构清晰,设计 GetText和SetText两个通用过程处理。 另外,图形中还含有块参照且可能这些 块是嵌套的,因此将文本转换设计为一 个递归过程。 (3)字典操作:是本程序的重头, 鉴于面向对象的优越性,通过构造一 个字典类来实现对数据的维护和操作, 从而把与字典有关的操作全部集中到 字典类上。它包含以下内容:常数: dicmax定义字典允许的最大的词条 数,根据运行效率、内存占用和实际 需求设定其数值;属性:Count字 典实际词条数,data词条;方法: 索引 Function Update(index As Integer, eng As String, chn As String) As Boolean If index = dicMAX Or index 0) Select Case op 按o p的值 图3 图形设置的几个对话框 图4 文本转换对话框和操作 Clear清空字典,Add添加词条, Update更新词条,Search查找, Cov实现文字翻译,Load装入字 典,Save保存字典。 (4)系统设置:主要指定系统工作路 径、字体文件路径、字典文件路径,并 保存在Windows注册表中。 三、详细设计 详细设计是对概要设计的内容进行 编码,具备有一定的编程能力且熟悉VBA 和AutoCAD模型对象就可顺利完成,其中 字典类的代码如下。 数据 Const dicMAX = 1000 定 义 最 大 词条数,根据实际需要和系统性能定 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 Add操作,成功返回True,eng 原文,chn译文 Function Add(eng As String, chn As String) As Boolean If dicCount = dicMAX Then Add = False: Exit Function 如果词条数超过 最大值则添加失败 ReDim Preserve DicData(1, dicCount) 重定义词条数组大小 DicData(0, dicCount) = eng DicData(1, dicCount) = chn dicCount = dicCount + 1 Add = True End Function U p d a t e 操 作 , 成 功 返 回 True,eng原文,chn译文,Index 数字化设计. in d d 6 82 0 0 9 . 1 1 . 2 5 9 : 1 9 : 1 2 A M 69CAD/CAM与制造业信息化2009年第11期 栏目主持:黎艳 投稿信箱:liy 替换查找的子串 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 = InStr(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) Input #1, e, c 读入词条 Add e, c 加入字典 Wend Close 1 关闭文件 Load = True Exit Function l1: Load = False 如遇错误,返 回失败 End Function Save操作,写出字典文件,fn 字典文件的全路径和名称 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_ 图5 字典管理对话框和操作 Initialize() dicCount = 0 End Sub 四、软件测试 这个软件是笔者设计的一个小软 件,通过调试,软件能正常运行实现工 程图样转换。 五、结论 软件完成后,试

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论