基于关键点射线碰撞检测的框选方法、系统及电子设备的制作方法

文档序号:6499187阅读:143来源:国知局
基于关键点射线碰撞检测的框选方法、系统及电子设备的制作方法
【专利摘要】本发明公开了基于关键点射线碰撞检测的框选方法、系统及电子设备,所述方法包括:以预定步长对用户在屏幕上操作焦点的移动位置进行采样,获取多个第一碰撞检测点;根据所述第一碰撞检测点与虚拟相机原点获取拾取射线;检测所述拾取射线是否与3D物体有相交,如有相交则选中所述3D物体并进行渲染。本发明不仅实现了高效的3D区域的圈选效果,而且还优化了3D空间射线点的选取,节省了大量冗余计算,提高了3D空间检测算法的执行效率。
【专利说明】基于关键点射线碰撞检测的框选方法、系统及电子设备
【技术领域】
[0001]本发明涉及3D图标的框选技术,尤其涉及的是一种基于关键点射线碰撞检测的框选方法、系统及电子设备。
【背景技术】
[0002]在3D Launcher场景开发中,有时候会碰到用鼠标画线在任意不规则封闭区域圈选图标的情况,传统的圈选技术使用的是2D平面矩形区域划分的算法。因为用户圈选的封闭区域是不确定的凸凹多边形,一般采用的方法是平面射线相交点数奇偶判别法,由于3DUI场景中的元素可能是3D物体,也可能是2D物体,单纯用2D的判别算法,划分区域无法实现3D场景的圈选效果。
[0003]因此,现有技术还有待于改进和发展。

【发明内容】

[0004]本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种基于关键点射线碰撞检测的框选方法、系统及电子设备,以解决现有单纯采用2D的判别算法在划分区域无法实现3D场景的圈选效果的问题。
[0005]本发明解决技术问题所采用的技术方案如下:
一种基于关键点射线碰撞检测的框选方法,其中,包括步骤:
以预定步长对用户在屏幕上操作焦点的移动位置进行采样,获取多个第一碰撞检测
占.根据所述第一碰撞检测点与虚拟相机原点获取拾取射线;
检测所述拾取射线是否与3D物体有相交,如有相交则选中所述3D物体并进行渲染。
[0006]进一步地,所述的基于关键点射线碰撞检测的框选方法,其中,根据3D物体在屏幕上的高度和宽度,计算采样间隔的预定步长。
[0007]进一步地,所述的基于关键点射线碰撞检测的框选方法,其中,所述预定步长为3D物体在屏幕上的对角线长度的一半。
[0008]进一步地,所述的基于关键点射线碰撞检测的框选方法,其中,获取多个第一碰撞检测点的步骤具体包括:
获取操作焦点在屏幕上移动的起点坐标(X(i,y0)和终点坐标(χη,yn);
计算第一碰撞检测点的个数m, m=S/N ;S为起点与终点的距离,N为预定步长,m为整
数;
以预定步长N对操作焦点在屏幕上的拖动线段上进行采样,获取的第一碰撞检测点坐标为(X0+ (Xn-X(I) *i/m, yQ+(yn-yQ)*i/m),其中,i 为 I 至 m 的整数。
[0009]进一步地,所述的基于关键点射线碰撞检测的框选方法,其中,对选中的所述3D物体进行渲染的步骤具体包括:
对选中3D物体的特定区域设置差别化特征; 对选中的3D物体进行差别化渲染并显示。
[0010]进一步地,所述的基于关键点射线碰撞检测的框选方法,其中,所述检测所述拾取射线是否与3D物体有相交,如有相交则选中所述3D物体并进行渲染步骤还包括:
获取所述拾取射线在远剪裁面上的交点,记为第二碰撞检测点;
检测所述拾取射线在第一碰撞检测点与第二碰撞检测点线段范围内相交的3D物体记为选中的3D物体。
[0011]—种基于关键点射线碰撞检测的框选系统,其中,所述系统包括:
第一碰撞检测点获取模块,用于以预定步长对用户在屏幕上操作焦点的移动位置进行采样,获取多个第一碰撞检测点;
拾取射线获取模块,用于根据所述第一碰撞检测点与虚拟相机原点获取拾取射线;
框选模块,用于检测所述拾取射线是否与3D物体有相交,如有相交则选中所述3D物体并进行渲染。
[0012]进一步地,所述的基于关键点射线碰撞检测的框选系统,其中,所述系统还包括: 预设置模块,用于根据3D物体在屏幕上的高度和宽度,计算采样间隔的预定步长。
[0013]进一步地,所述的基于关键点射线碰撞检测的框选系统,其中,所述框选模块还包括:
渲染模块,用于对选中3D物体的特定区域设置差别化特征,并对选中的3D物体进行差别化渲染。
[0014]进一步地,所述的基于关键点射线碰撞检测的框选系统,其中,所述框选模块包括:
第二碰撞检测点获取模块,用于获取所述拾取射线在远剪裁面上的交点,记为第二碰撞检测点;
检测模块,用于检测所述拾取射线在第一碰撞检测点与第二碰撞检测点线段范围内相交的3D物体记为选中的3D物体。
[0015]一种电子设备,其中,所述的电子设备设置有一框选系统,用于根据用户在屏幕上操作焦点的移动位置对多个物体进行框选选定。
[0016]进一步地,所述的电子设备,其中,所述的框选系统包括:
第一碰撞检测点获取模块,用于以预定步长对用户在屏幕上操作焦点的移动位置进行采样,获取多个第一碰撞检测点;
拾取射线获取模块,用于根据所述第一碰撞检测点与虚拟相机原点获取拾取射线;
框选模块,用于根据所述拾取射线是否与3D物体有相交,如有相交则选中所述3D物体并进行渲染。
[0017]本发明所提供的基于关键点射线碰撞检测的框选方法、系统及电子设备,不仅实现了高效的3D区域的圈选效果,而且还优化了 3D空间射线点的选取,节省了大量冗余计算,提高了 3D空间检测算法的执行效率。
【专利附图】

【附图说明】
[0018]图1是本发明提供的基于关键点射线碰撞检测的框选方法的流程图。
[0019]图2是图1中通过拾取射线进行物体拾取的原理示意图。[0020]图3是本发明提供的基于关键点射线碰撞检测的框选系统的结构示意图。
[0021]图4是图3中一优选实施例的结构示意图。
[0022]图5是图3中又一优选实施例的结构示意图。
【具体实施方式】
[0023]为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0024]参见图1,图1是本发明提供的基于关键点射线碰撞检测的框选方法的流程图,包括以下步骤:
步骤S100、以预定步长对用户在屏幕上操作焦点的移动位置进行采样,获取多个第一碰撞检测点。[0025]其中,在执行步骤SlOO之前,首先根据3D物体在屏幕上的高度和宽度,计算采样间隔的预定步长。由于3D物体或者图标的大小在正常状态下是确定的,根据3 D物体或者图标的高度和宽度可以动态确定采样间隔的步长,以尽可能的减少计算量,提高效率。本发明采用的预定步长优选为3D物体在屏幕上的对角线长度的一半,这里当多个3D物体的形状大小不一致的时候,所述的3D物体取最小3D物体的对角线长度的一半为宜。当然预定步长并不限于采用对角线长度的一半这一固定值,预定步长也可以在对角线长度的一半上下浮动。在具体计算是,3D物体在屏幕上的大小很容易确定,我们定义其高度和宽度分别为X和y,预定步长为N,则预定步长
【权利要求】
1.一种基于关键点射线碰撞检测的框选方法,其特征在于,包括步骤: 以预定步长对用户在屏幕上操作焦点的移动位置进行采样,获取多个第一碰撞检测占.根据所述第一碰撞检测点与虚拟相机原点获取拾取射线; 检测所述拾取射线是否与3D物体有相交,如有相交则选中所述3D物体并进行渲染。
2.根据权利要求1所述的基于关键点射线碰撞检测的框选方法,其特征在于,根据3D物体在屏幕上的高度和宽度,计算采样间隔的预定步长。
3.根据权利要求1或2所述的基于关键点射线碰撞检测的框选方法,其特征在于,所述预定步长为3D物体在屏幕上的对角线长度的一半。
4.根据权利要求1所述的基于关键点射线碰撞检测的框选方法,其特征在于,获取多个第一碰撞检测点的步骤具体包括: 获取操作焦点在屏幕上移动的起点坐标(X(i,y0)和终点坐标(χη,yn); 计算第一碰撞检测点的个数m, m=S/N ;S为起点与终点的距离,N为预定步长,m为整数; 以预定步长N对操作焦点在屏幕上的拖动线段上进行采样,获取的第一碰撞检测点坐标为(X0+ (Xn-X(I) *i/m, yQ+(yn-yQ)*i/m),其中,i 为 I 至 m 的整数。
5.根据权利要求1所述的基于关键点射线碰撞检测的框选方法,其特征在于,对选中的所述3D物体进行渲染的步骤具体包括: 对选中3D物体的特定区域设置差别化特征; 对选中的3D物体进行差别化渲染并显示。
6.根据权利要求1所述的基于关键点射线碰撞检测的框选方法,其特征在于,所述检测所述拾取射线是否与3D物体有相交,如有相交则选中所述3D物体并进行渲染步骤还包括: 获取所述拾取射线在远剪裁面上的交点,记为第二碰撞检测点; 检测所述拾取射线在第一碰撞检测点与第二碰撞检测点线段范围内相交的3D物体记为选中的3D物体。
7.一种基于关键点射线碰撞检测的框选系统,其特征在于,所述系统包括: 第一碰撞检测点获取模块,用于以预定步长对用户在屏幕上操作焦点的移动位置进行采样,获取多个第一碰撞检测点; 拾取射线获取模块,用于根据所述第一碰撞检测点与虚拟相机原点获取拾取射线; 框选模块,用于检测所述拾取射线是否与3D物体有相交,如有相交则选中所述3D物体并进行渲染。
8.根据权利要求7所述的基于关键点射线碰撞检测的框选系统,其特征在于,所述系统还包括: 预设置模块,用于根据3D物体在屏幕上的高度和宽度,计算采样间隔的预定步长。
9.根据权利要求7所述的基于关键点射线碰撞检测的框选系统,其特征在于,所述框选模块还包括: 渲染模块,用于对选中3D物体的特定区域设置差别化特征,并对选中的3D物体进行差别化渲染。
10.根据权利要求7所述的基于关键点射线碰撞检测的框选系统,其特征在于,所述框选模块包括: 第二碰撞检测点获取模块,用于获取所述拾取射线在远剪裁面上的交点,记为第二碰撞检测点; 检测模块,用于检测所述拾取射线在第一碰撞检测点与第二碰撞检测点线段范围内相交的3D物体记为选中的3D物体。
11.一种电子设备,其特征在于,所述的电子设备设置有一框选系统,用于根据用户在屏幕上操作焦点的移动位置对多个物体进行框选选定。
12.如权利要求11所述的电子设备,其特征在于,所述的框选系统包括: 第一碰撞检测点获取模块,用于以预定步长对用户在屏幕上操作焦点的移动位置进行采样,获取多个第一碰撞检测点; 拾取射线获取模块,用于根据所述第一碰撞检测点与虚拟相机原点获取拾取射线; 框选模块,用于根据所述拾取射线是否与3D物体有相交,如有相交则选中所述3D物体并进行渲染。`
【文档编号】G06F3/0346GK103529959SQ201310021066
【公开日】2014年1月22日 申请日期:2013年1月21日 优先权日:2013年1月21日
【发明者】卢伟超, 李星, 赵智宝, 张颖, 姬锐锋 申请人:Tcl集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1