一种获取聚光灯图形的方法及装置的制造方法_2

文档序号:9326565阅读:来源:国知局
光灯在屏幕上的位置;
[0060]具体的,在屏幕上新建一个图层,将该图层的颜色设置为黑色。给定聚光灯在屏幕上的位置坐标P(x,y),和聚光灯的半径R,并将该图层中P点的颜色设置为黑色透明。
[0061]步骤102,获取预先设置的个数的图形,所述图形为三角形或者多边形,所述图形的顶点包括所述圆的中心点以及至少两个在所述圆的圆周上的点;
[0062]优选地,所述获取预先设置的个数的图形,所述图形为三角形或者多边形,所述图形的顶点包括所述圆的中心点以及至少两个在所述圆的圆周上的点,包括:
[0063]将所述圆均匀的划分为N个等份;
[0064]获取划分后的N+1个点的坐标,所述N+1个点的坐标为N个等份的圆与所述聚光灯的圆周相交的N+1个点的坐标;
[0065]根据所述N+1个点的坐标获取N个三角形,所述三角形的顶点分别为所述圆的中心和所述N+1个点中相邻两个点。
[0066]具体的,将聚光灯的圆分成N份,则每一份的角度为a = 2* Ji /N,通过半径和聚光灯的坐标计算出这个划分N去区域的N个定点的坐标如下:
[0067]第i个点的坐标为:x = R*cos(i*a) ;y = R*sin(i*a) ;i从0到N,并设置第个点的颜色值为黑色不透明。
[0068]步骤103,将所述圆的中心的颜色值设置为第一颜色值,将在所述图形上除所述圆的中心点以外的其他点的颜色值设置为第二颜色值;
[0069]步骤104,根据预先设置的颜色变化算法获取颜色变化后的所述图形,所述变化为颜色值从所述第一颜色值到所述第二颜色值的变化。
[0070]优选地,所述根据预先设置的颜色变化算法获取颜色变化后的所述图形,所述变化为颜色值从所述第一颜色值到所述第二颜色值的变化,包括:
[0071]根据预先设置的渲染算法获取所述N个三角形的颜色从白色到黑色的渐变颜色,所述第一颜色值为白色,所述第二颜色值为黑色。
[0072]具体的,按顺序从N个定点中取出相邻的两个定点如(O, I) (1,2),...(N-LN+1),分别与聚光灯的坐标点P组成一个三角形,并用OpenGL的三角形渲染方式将这些三角行进行渲染,每个顶点的颜色值上面已知,OpenGL会根据颜色值变化趋势去渲染三角形,例如a点红色,b点白色,a到b就会由红变白趋势。
[0073]本发明实现通过获取聚光灯的圆,所述圆的中心点为所述聚光灯在屏幕上的位置;获取预先设置的个数的图形,所述图形为三角形或者多边形,所述图形的顶点包括所述圆的中心点以及至少两个在所述圆的圆周上的点;将所述圆的中心的颜色值设置为第一颜色值,将在所述图形上除所述圆的中心点以外的其他点的颜色值设置为第二颜色值;根据预先设置的颜色变化算法获取颜色变化后的所述图形,所述变化为颜色值从所述第一颜色值到所述第二颜色值的变化,从而实现聚光灯在灯中心是最亮,亮度再慢慢向四周递减,最后在给定的范围内达到模糊效果,给人的视线造成聚光灯的发散效果。
[0074]实施例二
[0075]参考图2,图2是本发明实施例获取聚光灯的方法第二实施例的流程示意图。
[0076]在实施例二中,所述根据预先设置的颜色变化算法获取颜色变化后的所述图形,所述变化为颜色值从所述第一颜色值到所述第二颜色值的变化之后,还包括:
[0077]步骤105,接收用户在所述屏幕上的触发点的位置坐标;
[0078]步骤106,判断所述触发点的位置坐标是否在所述聚光灯的圆的坐标范围内;
[0079]步骤107,若所述触发点的位置坐标是否在所述聚光灯的圆的坐标范围内,则获取所述触发点在所述屏幕上滑动的指令;
[0080]步骤108,根据所述指令移动所述聚光灯的中心点的位置。
[0081]优选地,所述根据所述指令移动所述聚光灯的中心点的位置,包括:
[0082]若所述指令为向左移动,则向左移动所述聚光灯的中心点的位置;
[0083]若所述指令为向右移动,则向右移动所述聚光灯的中心点的位置;
[0084]若所述指令为向上移动,则向上移动所述聚光灯的中心点的位置;
[0085]若所述指令为向下移动,则向下移动所述聚光灯的中心点的位置。
[0086]具体的,可以通过检测用户在屏幕聚光灯范围内的触屏位置,若该触屏位置在所述聚光灯的圆内,进一步检测用户在触摸屏上滑动的方向,根据该方向来移动所述聚光灯。
[0087]实施例三
[0088]参考图3,图3是本发明实施例获取聚光灯图形的装置的功能模块示意图。
[0089]在实施例三中,所述获取聚光灯图形的装置包括:
[0090]第一获取模块301,用于获取聚光灯的圆,所述圆的中心点为所述聚光灯在屏幕上的位置;
[0091]具体的,在屏幕上新建一个图层,将该图层的颜色设置为黑色。给定聚光灯在屏幕上的位置坐标P(x,y),和聚光灯的半径R,并将该图层中P点的颜色设置为黑色透明。
[0092]第二获取模块302,用于获取预先设置的个数的图形,所述图形为三角形或者多边形,所述图形的顶点包括所述圆的中心点以及至少两个在所述圆的圆周上的点;
[0093]优选地,参考图4,图4是本发明实施例第二获取模块302的功能模块示意图。
[0094]所述第二获取模块302包括:
[0095]划分单元401,用于将所述圆均匀的划分为N个等份;
[0096]第一获取单元402,用于获取划分后的N+1个点的坐标,所述N+1个点的坐标为N个等份的圆与所述聚光灯的圆周相交的N+1个点的坐标;
[0097]第二获取单元403,用于根据所述N+1个点的坐标获取N个三角形,所述三角形的顶点分别为所述圆的中心和所述N+1个点中相邻两个点。
[0098]具体的,将聚光灯的圆分成N份,则每一份的角度为a = 2* Ji /N,通过半径和聚光灯的坐标计算出这个划分N去区域的N个定点的坐标如下:
[0099]第i个点的坐标为:x = R*cos(i*a) ;y = R*sin(i*a) ;i从0到N,并设置第个点的颜色值为黑色不透明。
[0100]设置模块303,用于将所述圆的中心的颜色值设置为第一颜色值,将在所述图形上除所述圆的中心点以外的其他点的颜色值设置为第二颜色值;
[0101]第三获取模块304,用于根据预先设置的颜色变化算法获取颜色变化后的所述图形,所述变化为颜色值从所述第一颜色值到所述第二颜色值的变化。
[0102]优选地,图5是本发明实施例第三获取模块304的功能模块示意图。
[0103]所述第三获取模块304包括:
[0104]第三获取单元500,用于根据预先设置的渲染算法获取所述N个三角形的颜色从白色到黑色的渐变颜色,所述第一颜色值为白色,所述第二颜色值为黑色。
[0105]具体的,按顺序从N个定点中取出相邻的两个定点如(O, I) (1,2),...(N-1,N+1),分别与聚光灯的坐标点P组成一个三角形,并用OpenGL的三角形渲染方式将这些三角行进行渲染,每个顶点的颜色值上面已知,OpenGL会根据颜色值变化趋势去渲染三角形,例如a点红色,b点白色,a到b就会由红变白趋势。
[0106]本发明实现通过获取聚光灯的圆,所述圆的中心点为所述聚光灯在屏幕上的位置;获取预先设置的个数的图形,所述图形为三角形或者多边形,所述图形的顶点包括所述圆的中心点以及至少两个在所述圆的圆周上的点;将所述圆的中心的颜色值设置为第一颜色值,将在所述图形上除所述圆的中心点以外的其他点的颜色值设置为第二颜色值;根据预先设置
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1