标牌矩形图形计算机绘图方法
技术领域
本发明涉及一种图形绘制方法,尤其涉及一种标牌矩形图形绘制与修改的计算机绘图方法,属于印刷技术领域。
背景技术
随着计算机在工厂的普及,越来越多的企业使用CAD软件进行绘图,在标牌厂的标牌制作工艺流程中,一般先用CAD绘图软件将需要制作的标牌图形在计算机中绘制好并保存,然后将标牌图形文件转换成和激光照排机兼容的文件格式输出到照排机,照排机打印出胶片后进行生产。
目前已对标牌绘制方法做了一些改进,基于AutoCAD绘图软件,以输入标牌圆弧、刻度线、刻度值的各项参数的方法绘制标牌,提高了工作效率。但标牌中有些矩形图形,如图1所示,有几种情况:四个拐角图形或是正常的直角,或是内直角,或是内圆角,或是外圆角,是否需要填充颜色等,在AutoCAD中直接绘制也是很复杂的,绘制后图形的由于参数显示不直观,绘制好后无法进行参数化修改操作,这样工作人员在绘制的时候必须先绘制直角矩形,再进行倒角操作等,最后进行填充操作,手工操作步骤复杂,修改同样不方便,而且使精确程度大大下降,所以目前绘制此类标牌矩形图形的时候绘图员工作量很大,速度很慢,工作效率不高。
发明内容
本发明的目的在于提供一种标牌矩形图形计算机绘图方法,利用ObjectARX2008针对AutoCAD2008进行二次开发,根据矩形四个拐角的类型,使用多段线将矩形的四个拐角分别绘制,根据需要填充矩形,并将矩形所有边框对象设入同一图层中,将填充对象设入填充图层中,所有对象参数存入图形自带的扩展数据集中, 修改时通过扩展数据得到矩形的参数或修改相应拐角点参数或直接修改矩形拐角的类型或通过直接图层修改边框颜色或填充颜色等,再修改当前矩形达到参数化修改的效果。
一种标牌矩形图形计算机绘图方法,该方法包括下列步骤:
输入矩形长度、高度、线宽、线颜色、填充颜色;
新建图层Layer1,并用Layer_SetProperties_color方法设置图层颜色为矩形线颜色;
逐一选择矩形四个拐角类型并输入参数;
如果是内圆角及外圆角,在对话框中输入圆心与半径;如果是内直角,在对话框中输入内直角的长、宽,拐角点坐标;如果是原有的矩形直角,则在对话框中输入拐角点坐标;
参数输入完成,从左上角开始绘制,如是圆角,则根据参数绘制圆弧A,如是内直角,则根据参数绘制两条线段L1和L2,根据左下角的类型确定连接点后,再绘制左上角到左下角的连接线L,如是直角就直角绘制左上角到左下角的连接线L3,同时将以上对象设到图层Layer1中;
将A或L1或L3添加到CAD自带数据库的模型空间块表记录中,并得到对象ID号,根据ID号新建组对象Group,根据类型将A、L1、L2、L3、L加入组中和对象扩展数据集中,如需进行图形填充,还要将以上对象加入到一个临时的对象集(ObjectIdCollection)S中;
同样绘制左下角、右下角和右上角的图形及之间的连线,最后绘制右上角与左上角的连线并设到图层Layer1中,再将这些线与圆弧按矩形位置分类加入到同组Group中和对象扩展数据集中,如需填充,同样将以上对象加入到对象集S中;
判断是否填充矩形,如果填充,先新建填充图层Layer2,并用Layer_SetProperties_color方法设置图层颜色为填充颜色,新建填充对象ent,设置ent的层属性为Layer2,使用SetHatchPattern方法设置ent的填充方式为SOLID,使用AppendLoop方法对对象集S设置ent的填充边界进行填充;
标牌矩形图形绘制完成,进入矩形修改模块;
选择AutoCAD窗口中矩形中的任意一根线段或圆弧,得到对象ID号,根据得到对象ID号在扩展数据中进行遍历,得到该对象的扩展数据参数,在参数中获得对象组名称Group、图层名、对象颜色、填充颜色和四个拐角的参数显示在对话框中;
判断是颜色修改还是边框参数修改;
如果是颜色修改,输入修改的颜色属性,修改边框颜色与修改填充颜色相同,只要修改层Layer1或Layer2的颜色属性为修改的颜色,并将新的图层参数循环更新到所有同组对象的扩展数据集中;
如果是边框参数修改,修改四个拐角的参数或拐角的类型,或矩形的线宽,确定后删除组Group中所有对象,再重复以上绘制过程。
与现有技术相比,本发明的有益效果是:解决AutoCAD中现有绘制方法不能利用参数化的方法快速的绘制标牌矩形图形并记录到扩展数据集中的问题,对矩形图形不能快速获取参数的问题,解决矩形拐角图形等参数化快速修改与填充颜色参数化修改的问题,减少了绘制步骤与绘制时间,提高了工作效率。
附图说明
图1是包含矩形的标牌主视图;
图2是实施例填充颜色后的矩形示例图;
图3是矩形右上角拐角修改示例图;
图4是本发明的流程图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明。
标牌制作系统一般由绘图用计算机和激光照排机组成,计算机与照排机互联进行通讯,计算机将绘制好的标牌图形文件转换成和激光照排机兼容的文件格式输出到照排机,照排机打印出胶片后进行生产。本发明利用ObjectARX2008针对AutoCAD2008进行二次开发,根据矩形四个拐角的类型,使用多段线将矩形的四个拐角分别绘制,根据需要填充矩形,并将矩形所有参数存入图形自带的扩展数据集中, 修改时通过扩展数据得到矩形的参数或修改相应拐角点参数或直接修改矩形拐角的类型或直接修改填充颜色等,再修改当前矩形达到参数化修改的效果。
如图2所示,本实施例的标牌图形包括了内圆角、外圆角和内直角三种类型,参数如下面设置,并以索引颜色254进行填充,绘制好后要修改填充颜色为索引颜色253,修改右上角拐角为外圆角,圆角半径从5毫米修改为10毫米,如图3所示。矩形长100毫米,高50毫米,输入矩形线宽0.5毫米、矩形线颜色黑色、填充索引颜色254等参数。
如图4所示,进行上述矩形图形的修改绘制先新建图层Layer1,并用Layer_SetProperties_color方法设置图层颜色为矩形线颜色黑色;新建一个临时的对象集(ObjectIdCollection)S,用于后续的填充矩形用;
逐一选择四个拐角类型:左上角是内圆角,输入圆角的圆心坐标(-45,20)与半径5mm,由于左上角位置的确定,内圆角弧绘制的起始角度是90度,终止角度是180度;左下角是内直角,输入内直角的长和宽均是5mm,拐角点坐标是(-45,-20),由于左下角位置的确定,内直角绘制的是点(-50,-20)到点(-45,-20)的线段与点(-45,-20)到点(-45,-25)的线段;右下角是外圆角,输入外圆角的圆心坐标(45,-20)与半径5mm,由于右下角位置的确定,外圆角弧绘制的起始角度是90度,终止角度是180度;右上角是内圆角,输入圆角的圆心坐标(45,20)与半径5mm,由于右上角位置的确定,内圆角弧绘制的起始角度是0度,终止角度是90度;
四个拐角参数添加完成后,进行参数化绘制,根据左上角圆弧的圆心、半径、起终角度先绘制左上角的圆弧Arc,设置该圆弧的图层为Layer1,然后将该圆弧添加到CAD自带数据库的模型空间块表记录中,并得到对象ID号,根据ID号新建组对象Group,将该圆弧加入组和对象扩展数据集中;后续的所有绘制对象都将加入同组Group中;还要将圆弧Arc加入到刚才新建的对象集(ObjectIdCollection)S中;
根据参数继续绘制左下角的两条线段与右下角的圆弧与右上角的圆弧,并绘制四个拐角之间的四条连线,将这些对象的图层均设为Layer1层中,并加入到刚才新建的对象集(ObjectIdCollection)S中,该特殊矩形的所有对象绘制完成;将绘制的所有对象都加入到组Group中并加入对象扩展数据集中;
下面进行矩形的填充,由于填充的颜色与矩形线的颜色可能不一样,需新建填充图层Layer2,并用Layer_SetProperties_color方法设置图层颜色为填充颜色为索引颜色254,新建填充对象ent,设置ent的层属性为Layer2,使用SetHatchPattern方法设置ent的填充方式为SOLID,使用AppendLoop方法对对象集(ObjectIdCollection)S设置ent的填充边界进行填充,矩形填充完成。
下面修改填充颜色为索引颜色253,鼠标选择AutoCAD窗口中矩形中的任意一根线段或圆弧,得到对象ID号,根据得到对象ID号在扩展数据中进行遍历,得到该对象的扩展数据参数,在参数中获得对象组名称Group、填充图层名Layer2、填充颜色参数等显示在对话框中,修改的填充颜色为索引颜色253,确定后再修改层Layer2的颜色属性为索引颜色253,并将新的图层参数循环更新到所有同组Group对象的扩展数据集中,确保鼠标再选择AutoCAD窗口中矩形中的任意一根线段或圆弧时得到最新的参数。
下面修改矩形右上角拐角为外圆角,圆角参数不变,鼠标再选择AutoCAD窗口中矩形中的任意一根线段或圆弧,得到对象ID号,根据得到对象ID号在扩展数据中进行遍历,得到该对象的扩展数据参数,在参数中获得对象组名称Group、图层名、对象颜色、填充颜色和四个拐角的参数等,并在对话框中显示,修改右上角的类型为外圆角,圆角半径从5毫米改为10毫米,确定后删除组Group中所有对象,再重复以上绘制过程完成修改操作。
绘制标牌矩形图形的其它部分,再进行分色拼版,制版流程完成,使用照排机打印出图进行印刷。
本方法解决了AutoCAD中现有绘制方法不能利用参数化的方法快速的绘制标牌矩形图形并记录到扩展数据集中的问题,对矩形图形不能快速获取参数的问题,解决矩形拐角图形等参数化快速修改与填充颜色参数化修改的问题,减少了绘制步骤与绘制时间,提高了工作效率。
除上述实施例外,本发明还可以有其他实施方式,凡采用等同替换或等效变换形成的技术方案,均落在本发明要求的保护范围内。