碰撞检测的方法和装置的制造方法

文档序号:9453791阅读:214来源:国知局
碰撞检测的方法和装置的制造方法
【技术领域】
[0001]本发明涉及通信领域,特别涉及一种碰撞检测的方法和装置。
【背景技术】
[0002]Ventuz (维图斯)是一个实时的图像内容创作、编辑和播出控制软件。它专注于高端视听内容的制作,包括专业展示、视频墙安装、实况现场显示及互动、多点触摸应用、以及演播室和播出等领域。Ventuz设计性强,使用简便,可应用于视频墙、投影映射、广播电视在线包装,并且可与几乎所有的交互设备实现交互性使用。
[0003]在Ventuz系统中,当显示运动物体时,通常是按照该运动物体的运动轨迹进行独立显示,但是,对该运动物体在运动过程中是否会遇到平面图形,没有有效的检测手段,影响了显示效果。

【发明内容】

[0004]有鉴于此,本发明提供了一种碰撞检测的方法和装置,以实现运动物体与平面图形的碰撞检测。所述技术方案如下:
[0005]第一方面,本发明提供了一种碰撞检测的方法,所述方法包括:
[0006]获取平面图形;
[0007]在与所述平面图形的垂直方向上设置指定区间;
[0008]检测到有运动物体进入所述指定区间;
[0009]利用引射线法判断所述运动物体是否进入所述平面图形内,如果是,则确定所述运动物体与所述平面图形发生碰撞。
[0010]其中,所述平面图形的垂直方向为Z轴,所述检测到有运动物体进入所述指定区间,包括:
[0011]获取所述运动物体的Z坐标,判断所述Z坐标是否落入位于所述Z轴上的所述指定区间,如果是,则确定所述运动物体进入所述指定区间,否则,确定所述运动物体未进入所述指定区间。
[0012]其中,所述利用引射线法判断所述运动物体是否进入所述平面图形内,如果是,则确定所述运动物体与所述平面图形发生碰撞,包括:
[0013]在所述运动物体上确定检测点;
[0014]从所述检测点引一条穿过所述平面图形的直线,获取所述直线与所述平面图形的交占.
[0015]如果所述交点的个数为奇数,则确定所述运动物体与所述平面图形发生碰撞,如果所述交点的个数为偶数,则确定所述运动物体与所述平面图形未发生碰撞。
[0016]其中,所述平面图形的垂直方向为Z轴,且所述平面图形的Z坐标均为零,所述在所述运动物体上确定检测点,包括:
[0017]在所述运动物体上选取任一个Z坐标为零的点作为检测点。
[0018]其中,所述如果所述交点的个数为奇数,则确定所述运动物体与所述平面图形发生碰撞,如果所述交点的个数为偶数,则确定所述运动物体与所述平面图形未发生碰撞,包括:
[0019]当所述交点为多个且分别位于所述检测点的两侧时,分别判断所述检测点两侧的交点个数;
[0020]如果所述检测点两侧的交点个数均为奇数,则确定所述运动物体与所述平面图形发生碰撞;
[0021]如果所述检测点两侧的交点个数均为偶数,则确定所述运动物体与所述平面图形未发生碰撞。
[0022]第二方面,本发明提供了一种碰撞检测的装置,所述装置包括:
[0023]获取模块,用于获取平面图形;
[0024]设置模块,用于在与所述平面图形的垂直方向上设置指定区间;
[0025]检测模块,用于检测到有运动物体进入所述指定区间;
[0026]判断模块,用于利用引射线法判断所述运动物体是否进入所述平面图形内,如果是,则确定所述运动物体与所述平面图形发生碰撞。
[0027]其中,所述平面图形的垂直方向为Z轴,所述检测模块包括:
[0028]检测单元,用于获取所述运动物体的Z坐标,判断所述Z坐标是否落入位于所述Z轴上的所述指定区间,如果是,则确定所述运动物体进入所述指定区间,否则,确定所述运动物体未进入所述指定区间。
[0029]其中,所述判断模块用于:
[0030]在所述运动物体上确定检测点;
[0031]从所述检测点画一条穿过所述平面图形的直线,获取所述直线与所述平面图形的交占.
[0032]如果所述交点的个数为奇数,则确定所述运动物体与所述平面图形发生碰撞,如果所述交点的个数为偶数,则确定所述运动物体与所述平面图形未发生碰撞。
[0033]其中,所述平面图形的垂直方向为Z轴,且所述平面图形的Z坐标均为零,所述判断丰吴块包括:
[0034]确定单元,用于在所述运动物体上选取任一个Z坐标为零的点作为检测点。
[0035]其中,所述判断模块包括:
[0036]判断单元,用于当所述交点为多个且分别位于所述检测点的两侧时,分别判断所述检测点两侧的交点个数;如果所述检测点两侧的交点个数均为奇数,则确定所述运动物体与所述平面图形发生碰撞;如果所述检测点两侧的交点个数均为偶数,则确定所述运动物体与所述平面图形未发生碰撞。
[0037]本发明提供的技术方案带来的有益效果是:通过获取平面图形;在与所述平面图形的垂直方向上设置指定区间;检测到有运动物体进入所述指定区间;利用引射线法判断所述运动物体是否进入所述平面图形内,如果是,则确定所述运动物体与所述平面图形发生碰撞,实现了运动物体与平面图形的碰撞检测,为运动物体的显示提供了有效的控制手段,丰富了 Ventuz系统的功能。
【附图说明】
[0038]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0039]图1是本发明一实施例提供的碰撞检测的方法流程图;
[0040]图2是本发明另一实施例提供的碰撞检测的方法流程图;
[0041]图3是本发明另一实施例提供的引射线法示意图;
[0042]图4a-图4b是本发明另一实施例提供的碰撞检测的不意图;
[0043]图5是本发明另一实施例提供的碰撞检测的装置结构图。
【具体实施方式】
[0044]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0045]本发明实施例提供的碰撞检测的方法和装置,可以应用于Ventuz系统中,能够解决Ventuz系统无法对碰撞进行检测的问题,实现了运动物体与平面图形的碰撞检测,为运动物体的显示提供了有效的控制手段,丰富了 Ventuz系统的功能。
[0046]参见图1,本发明一实施例提供了一种碰撞检测的方法,包括:
[0047]101:获取平面图形;
[0048]其中,该平面图形可以为任意形状的平面图形,如三角形、四边形、六边形、椭圆形或不规则形状等等,本实施例对此不做具体限定。另外,该平面图形可以具有凹面角和/或凸面角,本实施例也不限定。
[0049]102:在与该平面图形的垂直方向上设置指定区间;
[0050]其中,平面图形上各点的坐标可以用X坐标和Y坐标来表示,与平面图形垂直方向上可以用Z坐标来表示,从而可以在三维立体空间内检测运动物体的碰撞。
[0051]103:检测到有运动物体进入该指定区间;
[0052]当有多个运动物体时,可以分别对每个运动物体进行检测,检测的方法是相同的,此处不再赘述。
[0053]104:利用引射线法判断该运动物体是否进入该平面图形内,如果是,则确定该运动物体与该平面图形发生碰撞。
[0054]其中,如果判断该运动物体没有进入该平面图形内,则确定该运动物体未与该平面图形发生碰撞。
[0055]本实施例中,可选地,该平面图形的垂直方向为Z轴,该检测到有运动物体进入该指定区间,包括:
[0056]获取该运动物体的Z坐标,判断该Z坐标是否落入位于该Z轴上的该指定区间,如果是,则确定该运动物体进入该指定区间,否则,确定该运动物体未进入该指定区间。
[0057]本实施例中,可选地,该利用引射线法判断该运动物体是否进入该平面图形内,如果是,则确定该运动物体与该平面图形发生碰撞,包括:
[0058]在该运动物体上确定检测点;
[0059]从该检测点引一条穿过该平面图形的直线,获取该直线与该平面图形的交点;
[0060]如果该交点的个数为奇数,则确定该运动物体与该平面图形发生碰撞,如果该交点的个数为偶数,则确定该运动物体与该平面图形未发生碰撞。
[0061]本实施例中,可选地,该平面图形的垂直方向为Z轴,且该平面图形的Z坐标均为零,该在该运动物体上确定检测点,包括:
[0062]在该运动物体上选取任一个Z坐标为零的点作为检测点。
[0063]本实施例中,可选地,该如果该交点的个数为奇数,则确定该运动物体与该平面图形发生碰撞,如果该交点的个数为偶数,则确定该运动物体与该平面图形未发生碰撞,包括:
[0064]当该交点为多个且分别位于该检测点的两侧时,分别判断该检测点两侧的交点个数;
[0065]如果该检测点两侧的交点个数均为奇数,则确定该运动物体与该平面图形发生碰撞;
[0066]如果该检测点两侧的交点个数均为偶数,则确定该运动物体与该平面图形未发生碰撞。
[0067]本实施例提供的上述方法,通过获取平面图形;在与所述平面图形的垂直方向上设置指定区间;检测到有运动物体进入所述指定区间;利用引射线法判断所述运动物体是否进入所述平面图形内,如果是,则确定所述运动物体与所述平面图形发生碰撞,实现了运动物体与平面图形的碰撞检测,为运动物体的显示提供了有效的控制手段,丰富了 Ventuz系统的功能。
[0068]参见图2,本发明另一实施例提供了一种碰撞检测的方法,包括:
[0069]201:获取平面图形;
[0070]具体的,可以在平面上设置N个点,N>2,然后将该N个点连接起来组成平面图形。
[0071]202:在与该平面图形的垂直方向上设置指定区间;
[0072]其中,该平面图形的垂直方向为Z轴,可选地,可以将平面图形的Z坐标设置为零,即该平面图形上任一点的Z坐标均为零。设置指定区间时,可以在平面图形的一侧设置,如在Z坐标为正的一侧设置,具体的,可以将指定区间设置为Z坐标[0,8]等等;或者也可以在两侧均设置,如将Z坐标的正负两侧均设置为指定区间内,具体的,可以设置指定区间为Z坐标为[-5,5]等等,本实施例对此不做具体限定。
[0073]这种设置指
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1