一种工艺符号的编辑装置及方法
【技术领域】
[0001] 本发明涉及一种工艺符号的编辑装置及方法,特别是一种在CAPP软件中使用的 基于参数化模板的、可与文字混合编辑与排版的工艺符号的编辑装置及方法。
【背景技术】
[0002] 工艺符号是指在CAPP软件中编写工艺时需要用到的一些符号,这些符号绝大部 分在汉字编码库中是找不到的。如粗糙度fλ形位基推 空、 _形位公差符号#、形位公差
口工面编号@焊缝编号等工艺符号。
[0003] 现有技术,在大部分CAPP软件中,其用到的工艺符号只能在图像编辑软件中绘 制,再作为图像插入到CAPP软件中的文本中,工艺符号与文字是不同类型的信息,显示效 果较差。
[0004] 工艺符号只能在图像编辑软件中绘制,在大部分的CAPP软件中可以与文本一起 图文混排,但工艺符号图像不能当作普通文本对待,工艺符号图像不能与普通文本很好的 融合,特别是高度方向与文本显示不协调;由于是图像对象,缩放时会失真;如果要修改工 艺符号,只能将对应工艺符号图像删除,再重新插入修改后的工艺符号图像。
[0005] 在少数CAPP软件中,工艺符号可以作为矢量图形插入到文本中,但是其工艺符号 不是基于模板的,只能一次性插入,插入后不能修改工艺符号中部分显示数据;如果要修 改,只能先删除原有的工艺符号,再重新插入。同时,由于工艺符号不是基于模板的,显示完 全是在软件内部实现的,如果需要调整显示效果,只能修改软件,代码维护工作量比较大。
[0006] 现有技术,工艺符号的编辑、修改、维护工作量大。
【发明内容】
[0007] 本发明的目的是提供了一种基于参数化模板的、可与文字混合编辑与排版的工艺 符号的编辑装置及方法,旨在解决在CAPP软件中编辑工艺文件时工艺符号与文本一起混 合编辑、混合显示/打印的问题。
[0008] 本发明的技术解决方案是:一种工艺符号的编制装置,包括建立工艺符号参数化 模板库模块11、模板库初始化模块12、新建符号实例模块13、有界面修改符号实例参数模 块14、无界面修改符号实例参数模块15、符号实例显示/打印模块16。
[0009] 建立工艺符号参数化模板库模块11 :通过分析CAPP中使用的各种工艺符号,对其 进行分类,对每种符号编写参数化模板,建立工艺符号参数化模板库。
[0010] 模板库初始化模块12 :本发明装置运行时,将模板库中的数据从文件中读入;分 别读取每个模板的信息,存放到内存的相应模板库的数据结构中。
[0011] 新建符号实例模块13 :此模块提供给调用方CAPP调用;调出模板类型界面,用户 选择模板类型后,弹出相应模板类型的参数设置界面。参数值设置完成后,模块返回模板 ID、参数个数、参数值等信息。
[0012] 有界面修改符号实例参数模块14 :此模块提供给调用方CAPP调用;根据传入的 模板ID、参数个数、参数值信息,自动调出相应模板类型的参数设置界面;参数值修改完成 后,模块返回模板ID、参数个数、参数值信息。
[0013] 无界面修改符号实例参数模块15 :此模块提供给调用方调用;根据传入的模板 ID、参数个数、参数值等信息,初始化工艺符号实例。
[0014] 符号实例显示/打印模块16 :此模块提供给调用方调用;需要先初始化工艺符号 实例。
[0015] 显示/打印时使用矢量图形显示技术,只需要调用方指定起点坐标、高度、HDC句 柄即可显示到调用方的窗口的指定位置中,显示/打印的工艺符号实例按比例缩放到指定 的高度显示/打印,宽度与高度方向的缩放比例相同。
[0016] 一种工艺符号的编制方法,其步骤如下:
[0017] S1 :通过分析CAPP中使用的各种工艺符号,对其进行分类,对每种符号编写参数 化模板,建立工艺符号参数化模板库;
[0018] S2 :使用工艺符号参数化模板库,新建、修改、显示/打印工艺符号。
[0019] 所述S1步骤包括:
[0020]S11 :分析CAPP中使用的各种工艺符号,对其进行分类;
[0021] S12 :对每种符号进行分析,对可变的部分,进行参数化,在此基础上编写参数化 模板;
[0022] S13 :将所有符号的参数化模板组织起来,建立工艺符号参数化模板库。
[0023] 所述S13中参数化模板库中的每个模板,包括ID、名称、分类、参数列表、线、圆 (弧)、文本元素信息的描述,还包括填充块、特殊标识符。
[0024] 所述参数列表可以是文本类型、特殊标识符类型或两者的组合,通过类型名称后 面的索引号与模板中的文本或特殊标识符关联。
[0025] 所述线元素信息包括索引号、起点坐标、终点坐标、线的颜色、线宽;圆(弧)元素 信息包括索引号、圆心坐标、半径、起始角、终止角、是否整圆标志、线的颜色、线宽;文本元 素信息包括索引号、是否是参数、可显示区域定位方式、起点坐标、显示方向、初始值、参数 名称、显示时对齐方向、支持的最大字符数、字高、字体名称、字高、字宽、字距、字体颜色深 度、字体颜色;填充块包括填充的颜色、构成封闭区域的顶点数、顶点的坐标;特殊标识符 信息包括参数名称、初始值、参数取值有范围、线的颜色、线宽。
[0026] 所述S2步骤包括:初始化工艺符号参数化模板库;在CAPP中插入工艺符号的过 程;在CAPP中修改已经插入的工艺符号的过程;在CAPP中删除已经插入的工艺符号的过 程;在CAPP中显示已经插入的工艺符号的过程。
[0027] 初始化工艺符号参数化模板库:使用本发明装置的CAPP在启动时会加载本发明 装置,本发明装置会自动执行模板库初始化模块12,对模板库进行初始化。
[0028] 在CAPP中插入工艺符号的过程:在CAPP中正常编辑文本,在需要插入工艺符号 时,调用新建符号实例模块13,在模块中弹出界面让用户选择模板并输入或选择的相应的 参数值后,确认并退出弹出界面,模块返回模板ID、参数个数、参数值等信息,CAPP将这些 信息记录到工艺符号数组中,并给出一个在当前文档中值唯一的两个字节值标识一个工艺 符号,一个ASCII值为0x19的字符作为工艺符号的前导字符,前导字符加上这两个字节值 的标识,在CAPP中表示插入的一个工艺符号。
[0029] 在CAPP中修改已经插入的工艺符号的过程:在CAPP中将插入符定位到一个待修 改的工艺符号后,CAPP通过当前字符的第一个字节的ASCII码值为0x19判断为是一个工艺 符号,再取后面的两个字节的值作为标识,在当前文档的工艺符号数组定位相应的数组元 素项,并从这个数组元素项中获取这个工艺符号的信息,包括模板ID、参数个数、参数值等 信息。调用有界面修改符号实例参数模块14时将这些信息传入,模块自动调出相应模板类 型的参数设置界面。参数值修改完成后,模块返回模板ID、参数个数、参数值等信息。CAPP 将这些信息记录到工艺符号数组中修改时定位的数组元素项中,对应的两个字节的值保持 不变,即修改后,表示当前工艺符号的一个ASCII值为0x19的前导字符及两个字节值的标 识不变。
[0030] 在CAPP中删除已经插入的工艺符号的过程:在CAPP中将插入符定位到一个待删 除的工艺符号后,CAPP通过当前字符的第一个字节的ASCII码值为0x19判断为是一个工 艺符号,再取后面的两个字节的值作为标识,在当前文档的工艺符号数组定位相应的数组 元素项,从数组中这个元素项,并删除从当前正在编辑的文本中当前字符对应的ASCII码 值为0x19的工艺符号标识符和后面的两个字节。
[0031] 在CAPP中显示已经插入的工艺符号的过程:在CAPP中逐个每个字符,