一种用于打印机上基于算法描线画圆环的方法技术

技术编号:24120007 阅读:22 留言:0更新日期:2020-05-13 02:48
本发明专利技术提供一种用于打印机上基于算法描线画圆环的方法,确定打印机喷墨头所要实现的功能操作,功能操作为在直线方向形成用于绘制的可描线段,对应打印机的控件生成画圆环时对应喷墨头打印的像素数据,包括以下步骤:根据待画圆位置和圆形自定义控件指定位置计算圆心的坐标;设定圆环对应的内虚拟圆和外虚拟圆;计算出圆环在坐标轴上的可描线段的坐标,对应不在坐标轴上的可描线段,计算出圆环在各象限内的坐标;通过构造函数以点为单位描线段,描画出喷墨头打印的圆环图形像素数据,生成画圆环时对应以点为单位描线段的像素数据,避免计算时在圆线的同一位置上有重复计算画点的现象,加快像素数据的生成时间,有效缩短响应打印指令的等待时间。

【技术实现步骤摘要】
一种用于打印机上基于算法描线画圆环的方法
本专利技术涉及计算机图形学领域,尤其是一种用于打印机上基于算法描线画圆环的方法。
技术介绍
简单地说,现有热敏打印机上打印圆环的过程就是喷墨头根据生成的最接近圆环的像素数据进行喷墨的过程。目前的热敏打印机,存在多种计算后形成像素数据来描画圆环的方法,但多数是从画圆渐变而来,也就是逐渐改变圆半径逐一画圆,达到画圆环的效果,而画圆的算法一般有bresenham画圆法、正负画圆法、中点画圆法、快速画圆法等,这些算法都是比较高效的算法,但逐一画圆,一旦圆环厚度够厚或圆环对应的直径比较大时,就会出现耗时太多,造成打印机响应打印指令的等待时间比较长,影响用户使用的体验效果;另外,这些算法在计算时,同时存在在圆线的同一位置上有重复画点的现象,同样,延缓像素数据的生成时间,进一步地延缓响应打印指令的等待时间,造成打印指令下发后,打印机长时间怠机或不进行打印动作。
技术实现思路
本专利技术解决逐一画圆耗时造成像素数据的生成时间长问题,提供一种针对画厚圆环采用描线画圆环方式、更能节省画圆时间的快速,有效缩短响应打印指令的等待时间和提高用户使用体感的用于打印机上基于算法描线画圆环的方法。为达到上述明目的,采用的技术方案如下:一种用于打印机上基于算法描线画圆环的方法,包括以下步骤:确定打印机喷墨头所要实现的功能操作,所述功能操作为在直线方向形成用于绘制的可描线段,对应打印机的控件生成画圆环时对应喷墨头打印的像素数据,具体为:步骤一:根据待画圆位置和圆形自定义控件指定位置计算得到圆心的X轴坐标以及Y轴坐标;确定圆环的圆心,并以该圆心为原点做笛卡尔坐标系,其中y轴为竖轴,x轴为横轴;步骤二:设定圆环对应的内虚拟圆和外虚拟圆的半径分别为r和R,内虚拟圆外围的外虚拟圆上形成一个虚拟圆环;步骤三:设定虚拟圆环在x轴的正向形成的线段为可描线段,计算出可描线段的两端点坐标,则令直线y=0与虚拟圆环相交于A点和B点,该A点和B点是可描线段的两端点,此时A点、B点的坐标分别为(r,0)和(R,0);步骤四:根据圆的对称性,以及步骤三中的可描线段,依次计算出关于x轴对称的可描线段、和关于y轴对称的可描线段为(-r,0)和(-R,0)两点间的线段;步骤五:根据步骤三和步骤四计算出的可描线段,计算出圆环在坐标轴上的可描线段的坐标;步骤六:对应不在坐标轴上的可描线段,重复步骤三的步骤,设定不在坐标轴上的可描线段在y轴上的直线高度y=h,与虚拟圆环相交于C点和D点,此时C点和D点间的线段便是可描线段,而C点和D点的坐标分别可表示为(|√(r*r-h*h)|,h)和(|√(R*R-h*h)|,h),坐标中符号√表示开根号,两竖线表示两竖线的值取正值,也就是取绝对值:步骤七:根据圆的对称性,以及步骤六中的可描线段,计算出圆中各象限的不在坐标轴上的可描线段;步骤八:根据步骤七计算出的可描线段,计算出圆环在坐标轴上的可描线段的坐标;步骤九:根据步骤六至步骤八,由于不同的可描线段的高度不一样,也就是y=h的h取值不一样,取值范围(0,R);当h的取值范围在(r,R)之间时,其中C点的坐标为(0,h),如此计算出圆环在各象限内的坐标;步骤十:根据步骤一至步骤九中,计算出的可描线段在各象限内的坐标,通过构造函数以点为单位描线段,描画出一个用于喷墨头打印的圆环图形像素数据。本专利技术的优点:本专利技术针对打印机喷墨头打印时所要实现沿直线方向绘制的可描线段,特别是圆环厚度够厚或圆环对应的直径比较大时,画厚圆环采用描线画圆环方式,生成画圆环时对应以点为单位描线段的像素数据,避免计算时在圆线的同一位置上有重复计算画点的现象,提高像素数据的生成时间,有效缩短响应打印指令的等待时间和提高用户使用体感,更能节省画圆的计算时间,有效解决内控软件中逐一画圆计算耗时而造成像素数据的生成时间长问题,使得打印指令下发后,打印机的打印动作可以快速响应,提高用户使用体感。【附图说明】图1是本专利技术中内虚拟圆和外虚拟圆的示意图;图2是本专利技术中不在坐标轴上的可描线段的虚拟圆环结构示意图;图3是本专利技术采用C语言计算的虚拟圆环结构示意图。【具体实施方式】下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。一种用于打印机上基于算法描线画圆环的方法,包括以下步骤:确定打印机喷墨头所要实现的功能操作,所述功能操作为在直线方向形成用于绘制的可描线段,对应打印机的控件生成画圆环时对应喷墨头打印的像素数据,具体为:步骤一:根据待画圆位置和圆形自定义控件指定位置计算得到圆心的X轴坐标以及Y轴坐标;确定圆环的圆心,并以该圆心为原点做笛卡尔坐标系,其中y轴为竖轴,x轴为横轴;步骤二:如图1所示,设定圆环对应的内虚拟圆和外虚拟圆的半径分别为r和R,内虚拟圆外围的外虚拟圆上形成一个虚拟圆环;步骤三:设定虚拟圆环在x轴的正向形成的线段为可描线段,该可描线段为图1中加粗的线段,计算出图1中可描线段的两端点坐标,则令直线y=0与虚拟圆环相交于A点和B点,该A点和B点是可描线段的两端点,此时A点、B点的坐标分别为(r,0)和(R,0);步骤四:根据圆的对称性,以及步骤三中的可描线段,依次计算出关于x轴对称的可描线段、和关于y轴对称的可描线段为(-r,0)和(-R,0)两点间的线段;步骤五:根据步骤三和步骤四计算出的可描线段,计算出圆环在坐标轴上的可描线段的坐标;步骤六:对应不在坐标轴上的可描线段,重复步骤三的步骤,如图2所示,设定不在坐标轴上的可描线段在y轴上的直线高度y=h,与虚拟圆环相交于C点和D点,此时C点和D点间的线段便是可描线段,而C点和D点的坐标分别可表示为(|√(r*r-h*h)|,h)和(|√(R*R-h*h)|,h),坐标中符号√表示开根号,两竖线表示两竖线的值取正值,也就是取绝对值。步骤七:根据圆的对称性,以及步骤六中的可描线段,计算出圆中各象限的不在坐标轴上的可描线段;步骤八:根据步骤七计算出的可描线段,计算出圆环在坐标轴上的可描线段的坐标;步骤九:根据步骤六至步骤八,由于不同的可描线段的高度不一样,也就是y=h的h取值不一样,取值范围(0,R);当h的取值范围在(r,R)之间时,如图2中的虚线所示,其中C点的坐标为(0,h);如此计算出圆环在各象限内的坐标;步骤十:根据步骤一至步骤九,根据计算出的可描线段在各象限内的坐标,通过构造函数以点为单位描线段,描画出一个用于喷墨头打印的圆环图形像素数据。其中,步骤六中,采用C语言实现计算,输入参数为(x,y,R,d);如图3所示,x指定左上角的x坐标,以像素点为单本文档来自技高网...

【技术保护点】
1.一种用于打印机上基于算法描线画圆环的方法,其特征是,包括以下步骤:/n确定打印机喷墨头所要实现的功能操作,所述功能操作为在直线方向形成用于绘制的可描线段,对应打印机的控件生成画圆环时对应喷墨头打印的像素数据,具体为:/n步骤一:根据待画圆位置和圆形自定义控件指定位置计算得到圆心的X轴坐标以及Y轴坐标;确定圆环的圆心,并以该圆心为原点做笛卡尔坐标系,其中y轴为竖轴,x轴为横轴;/n步骤二:设定圆环对应的内虚拟圆和外虚拟圆的半径分别为r和R,内虚拟圆外围的外虚拟圆上形成一个虚拟圆环;/n步骤三:设定虚拟圆环在x轴的正向形成的线段为可描线段,计算出可描线段的两端点坐标,则令直线y=0与虚拟圆环相交于A点和B点,该A点和B点是可描线段的两端点,此时A点、B点的坐标分别为(r,0)和(R,0);/n步骤四:根据圆的对称性,以及步骤三中的可描线段,依次计算出关于x轴对称的可描线段、和关于y轴对称的可描线段为(-r,0)和(-R,0)两点间的线段;/n步骤五:根据步骤三和步骤四计算出的可描线段,计算出圆环在坐标轴上的可描线段的坐标;/n步骤六:对应不在坐标轴上的可描线段,重复步骤三的步骤,设定不在坐标轴上的可描线段在y轴上的直线高度y=h,与虚拟圆环相交于C点和D点,此时C点和D点间的线段便是可描线段,而C点和D点的坐标分别可表示为(|√(r*r-h*h)|,h)和(|√(R*R-h*h)|,h),坐标中符号√表示开根号,两竖线表示两竖线的值取正值,也就是取绝对值;/n步骤七:根据圆的对称性,以及步骤六中的可描线段,计算出圆中各象限的不在坐标轴上的可描线段;/n步骤八:根据步骤七计算出的可描线段,计算出圆环在坐标轴上的可描线段的坐标;/n步骤九:根据步骤六至步骤八,由于不同的可描线段的高度不一样,也就是y=h的h取值不一样,取值范围(0,R);当h的取值范围在(r,R)之间时,其中C点的坐标为(0,h),如此计算出圆环在各象限内的坐标;/n步骤十:根据步骤一至步骤九中,计算出的可描线段在各象限内的坐标,通过构造函数以点为单位描线段,描画出一个用于喷墨头打印的圆环图形像素数据。/n...

【技术特征摘要】
1.一种用于打印机上基于算法描线画圆环的方法,其特征是,包括以下步骤:
确定打印机喷墨头所要实现的功能操作,所述功能操作为在直线方向形成用于绘制的可描线段,对应打印机的控件生成画圆环时对应喷墨头打印的像素数据,具体为:
步骤一:根据待画圆位置和圆形自定义控件指定位置计算得到圆心的X轴坐标以及Y轴坐标;确定圆环的圆心,并以该圆心为原点做笛卡尔坐标系,其中y轴为竖轴,x轴为横轴;
步骤二:设定圆环对应的内虚拟圆和外虚拟圆的半径分别为r和R,内虚拟圆外围的外虚拟圆上形成一个虚拟圆环;
步骤三:设定虚拟圆环在x轴的正向形成的线段为可描线段,计算出可描线段的两端点坐标,则令直线y=0与虚拟圆环相交于A点和B点,该A点和B点是可描线段的两端点,此时A点、B点的坐标分别为(r,0)和(R,0);
步骤四:根据圆的对称性,以及步骤三中的可描线段,依次计算出关于x轴对称的可描线段、和关于y轴对称的可描线段为(-r,0)和(-R,0)两点间的线段;
步骤五:根据步骤三和步骤四计算出的可描线段...

【专利技术属性】
技术研发人员:孙瑞娟
申请(专利权)人:珠海趣印科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1