圆形图案显示平滑的优化处理方法、系统及智能设备的制造方法

文档序号:9668118阅读:460来源:国知局
圆形图案显示平滑的优化处理方法、系统及智能设备的制造方法
【技术领域】
[0001]本发明涉及显示控制技术领域,尤其涉及的是一种图形图案显示平滑的优化处理方法、系统及智能设备。
【背景技术】
[0002]随着智能硬件的火热发展,各种硬件平台的智能手表解决方案也百花齐放,相对于苹果开发的高性能的A7芯片,可以很好的进行浮点运算,对圆形图案进行平滑显示,如图1所示,而一些低性能的低功耗芯片也很具有优势,但是在图形显示上却有先天不足,因为低功耗芯片中没有FPU单元,不支持浮点运算.所以没有办法进行复杂的GUI计算,去实现平滑圆的显示,如图2所示,导致显示的圆形图案边缘不光滑,不能满足用户对图案美观的需求。
[0003]因此,现有技术有待于进一步的改进。

【发明内容】

[0004]鉴于上述现有技术中的不足之处,本发明的目的在于为用户提供一种图形图案显示平滑的优化处理方法、系统及智能设备,克服现有技术中内部设置为低功耗芯片的智能终端上,显示出的圆形图案边缘不光滑的缺陷。
[0005]本发明解决技术问题所采用的技术方案如下:
一种圆形图案显示平滑的优化处理方法,其中,包括:
A、获取待优化圆形图案上的圆心坐标,根据所述圆心坐标及圆形图案的半径,得到图形图案上全部点的坐标值,同时还获取全部点的透明度和RGB参数;
B、以透明度的最大限值为基准,分别计算圆形图案在坐标X轴方向和Y轴方向上任意一坐标所对应点相邻两个点的透明度补偿值;
C、按照透明度逐渐增大或者逐渐减小的原则,根据所述相邻两个点的透明度补偿值计算出所述对应点的透明度补偿值,并以计算出的所述对应点的透明度补偿和所述对应点的RGB参数,重新画出所述对应点;
D、重复步骤C,依次重新画出所述图形图案上全部的点。
[0006]所述圆形图案显示平滑的优化处理方法,其中,所述步骤A还包括:
A1、以待优化图形图案的圆心坐标为坐标轴的原点,根据图像图案的半径,得到圆形图案上全部点的坐标值。
[0007]所述图形图案显示平滑的优化处理方法,其中,所述步骤B中任意一坐标所对应点相邻两个点的透明度补偿值的计算公式为:
当沿 Y 轴方向时,tran= (dy-floor (dy)) *maxtrans+0.5,
当沿 X 轴方向时,tran= (dx-floor (dx)) *maxtrans+0.5 ;
上述tran为透明度补偿值;dy或者dx分别表示该点Y坐标值或者X的坐标值;所述floor (dy)和floor (dx)分别为将dy和dx带入floor函数,得到的不大于dy和dx的整数;maxtrans为透明度的最大限值。
[0008]所述图形图案显示平滑的优化处理方法,其中,所述圆形图案包括:圆、圆弧或者圆环。
[0009]一种图形图案显示平滑的优化处理系统,其中,包括:
数据获取模块,用于获取待优化圆形图案上的圆心坐标,根据所述圆心坐标及圆形图案的半径,得到图形图案上全部点的坐标值,同时还获取全部点的透明度和RGB参数;
相邻补偿计算模块,用于以透明度的最大限值为基准,分别计算圆形图案在坐标X轴方向和Y轴方向上任意一坐标所对应点相邻两个点的透明度补偿值;
画点模块,用于按照透明度逐渐增大或者逐渐减小的原则,根据所述相邻两个点的透明度补偿值计算出所述对应点的透明度补偿值,并以计算出的所述对应点的透明度补偿和所述对应点的RGB参数,重新画出所述对应点;
重复画点模块,用于依次重新画出所述图形图案上全部的点。
[0010]所述图形图案显示平滑的优化处理系统,其中,所述数据获取模块还包括:
坐标值计算单元,用于以待优化图形图案的圆心坐标为坐标轴的原点,根据图像图案的半径,得到圆形图案上全部点的坐标值。
[0011]所述图形图案显示平滑的优化处理系统,其中,所述相邻补偿计算模块中任意一坐标所对应点相邻两个点的透明度补偿值的计算公式为:
当沿 Y 轴方向时,tran= (dy-floor (dy)) *maxtrans+0.5,
当沿 X 轴方向时,tran= (dx-floor (dx)) *maxtrans+0.5 ;
上述tran为透明度补偿值;dy或者dx分别表示该点Y坐标值或者X的坐标值;所述floor (dy)和floor (dx)分别为将dy和dx带入floor函数,得到的不大于dy和dx的整数;maxtrans为透明度的最大限值。
[0012]所述图形图案显示平滑的优化处理系统,其中,所述圆形图案包括:圆、圆弧或者圆环。
[0013]一种智能设备,其中,包括所述的图形图案显示平滑的优化处理系统,所述智能设备为手机、平板电脑或穿戴设备。
[0014]有益效果,本发明提供了一种图形图案显示平滑的优化处理方法、系统及智能设备,通过得到图形图案上全部点的坐标值,以透明度的最大限值为基准,分别计算圆形图案在坐标X轴方向和Y轴方向上任意一坐标所对应点相邻两个点的透明度补偿值,根据所述相邻两个点的透明度补偿值计算出所述对应点的透明度补偿值,并以计算出的所述对应点的透明度补偿和所述对应点的RGB参数,重新画出图形图案上全部的点。所述方法及其系统,为不带有FPU的mcu智能设备解决了如何平滑画圆的问题,为低端的低功耗芯片的性能提供了支持,并且本发明所述方法及其系统,实现简单,与平台函数耦合性好,有效的提高了安装有低功耗芯片智能设备的智能性。
【附图说明】
[0015]图1是现有技术中系统芯片中带有FPU单元的智能设备显示的圆形图案的示意图。
[0016]图2是现有技术中系统芯片中不带有FPU单元的智能设备显示的圆形图案的示意图。
[0017]图3为本发明所述方法对系统芯片中不带有FPU单元的智能设备显示的圆形图案进行优化处理后的示意图。
[0018]图4是本发明所述方法具体实施例的步骤示意图。
[0019]图5是发明所提供的一种图形图案显示平滑的优化处理的系统的原理结构示意图。
【具体实施方式】
[0020]为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。
[0021]为了解决现有技术中智能设备中低功耗芯片不能进行浮点计算,无法实现圆形图案的平滑显示的缺陷,本发明提供了一种圆形图案显示平滑的优化处理方法,如图3所示,包括:
S1、获取待优化圆形图案上的圆心坐标,根据所述圆心坐标及圆形图案的半径,得到图形图案上全部点的坐标值,同时还获取全部点的透明度和RGB参数;所述圆形图案包括:圆、圆弧或者圆环。
[0022]本方法中首先获取待优化处理的图形图案,对其圆形图案的圆心坐标进行定位,获取该圆形图案的圆心坐标和半径后,获取该图案上全部点的坐标值。
[0023]具体的,所述圆形图案可以为圆、圆环或者圆弧,这些图案都具有圆心和半径,且其边缘在无FPU单元进行浮点运算的智能设备上显示为不平滑。
[0024]S2、以透明度的最大限值为基准,分别计算圆形图案在坐标X轴方向和Y轴方向上任意一坐标所对应点相邻两个点的透明度补偿值。
[0025]为了让圆形图案看起来比较平滑,本发明中通过设置透明度的方式对圆形图案进行重新画点,具体的,为使圆形图案上点的透明度依次增强或者依次减弱,圆形图案上点看起来能够跟底图有一个渐变的过程,从而达到圆形图案整体看起来会是一个平滑的圆弧,因此为了达到上述效果,本步骤中,需要首先设置透明度的补偿标准,即以透明度的最大限值为基准,分别计算圆形图案上每一个点的透明度,以最大限值为基准,计算每个点所对应的透明度补偿值。
[0026]具体的,在实施例中,可以分别从X轴方向和Y轴方向依次进行点的透明度值的获取,以及透明度补偿值的计算。
[0027]S3、按照透明度逐渐增大或者逐渐减小的原则,根据所述相邻两个点的透明度补偿值计算出所述对应点的透明度补偿值,并以计算出的所述对应点的透明度补偿和所述对应点的RGB参数,重新画出所述对应点。
[0028]由于是采用透明度逐渐增大或者逐渐减少,因此在对每个点的具体补偿值进行计算时,需要考虑其相邻两个点的透明度补充值,并且以这两个相邻的透明度补偿值为基准,对该点进行透明度补偿。具体的,使用渐变灰滤镜的原理,每一个像素点都有A,R, G, B四个分量,在圆上的每一个点的左右相邻点取它们的透明度进行算法处理,使之与基准坐标点达到平滑过渡的效果,从而达到抗锯齿平滑圆的效果。
[0029]在本步骤中任意一坐标所对应点相邻两个点的透明度补偿值的计算公式为:
当沿 Y 轴方向时,tran= (dy-floor (dy)) Xmaxtrans+0.5,
当沿 X 轴方向时,tran= (dx-floor (dx)) Xmaxtrans+0.5 ;
上述tran为透明度补偿值;dy或者dx分别表示该点Y坐标值或者X的坐标值;所述floor (dy)和floor (dx)分别为将dy和dx带入floor函数,得到的不大于dy和dx的整数;maxtrans为透明度的最大限值。
[0030]S4、重复步骤S3,依次重新画出所述图形图案上全部的点。
[0031]采用上述步骤S1-S4所述方法对圆形图案进行优化后的显示图案,可以得到其效果与图1中高性能芯片经过浮点计算后,显示的圆形图案效果相同。
[0032]所述步骤S1还包括:
S11、以待优化图形图案的圆心坐标为坐标轴的原点,根据图像图案的半径,得到圆形图案上全部点的坐标值。
[0033]为了方便透明度补偿值的计算,在具体实施例中,选择将定位出的圆形图案的圆心坐标为坐标轴的原点,简化了计算图案上点所对应坐标点的运算,提高了芯片处理数据的效率。
[0034]下面以其具体实施例的步骤,结合优化画园的算法程序,对本发明所述方法进一步说明,如下为所述优化画园的算法程序:
void gdi_draw_anti_circle(S32x, S32y, S32 radius, gdi_color circle_color)
{
S32 quarter = (S32) (0.707 * radius + 0.5);
S32 i;
double dx, dy; double delt;
U32 tran;
U32 alpha, alpha2;
U32 maxTrans = OxFF;
kal—uint32 a,r,g,b;
for (i = 0; i <= quarter; ++i)
{
double temp = sqrt (1 _ ((i 木 i 木 1.0f) / (radius 木 radius)));
dy = radius 氺 temp;
delt = dy - floor(dy);
tran = (U32) (delt * maxTrans + 0.5);
gdi—cf—separate—color(GDI—COLOR—FORMAT—32, circle—color, &a, &r, &g, &b);
alpha
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1