CN106846443A - 一种碰撞检测方法及系统 - Google Patents
一种碰撞检测方法及系统 Download PDFInfo
- Publication number
- CN106846443A CN106846443A CN201710007139.2A CN201710007139A CN106846443A CN 106846443 A CN106846443 A CN 106846443A CN 201710007139 A CN201710007139 A CN 201710007139A CN 106846443 A CN106846443 A CN 106846443A
- Authority
- CN
- China
- Prior art keywords
- dom
- alpha values
- rectangular
- picture
- alpha
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/80—2D [Two Dimensional] animation, e.g. using sprites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及数据分析领域,尤其涉及一种碰撞检测方法及系统,本发明通过以下步骤进行碰撞检测:建立二维坐标系;获取第一DOM矩形结构图片和第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成Alpha值对集合;若所述Alpha值对集合中,存在一Alpha值对的两个Alpha值均不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象发生碰撞。本发明只需检测出Alpha值对集合中存在一Alpha值对均不为0,则停止检测,在一定程序上提高了DOM结构中对象碰撞检测的效率;同时像素点的Alpha值进行像素级的检测,能够提高碰撞检测的准确性。
Description
技术领域
本发明涉及数据分析领域,尤其涉及一种碰撞检测方法及系统。
背景技术
针对在web端,由于DOM结构中的图片都是矩形,即使是不规则的图片,放在DOM结构里也是矩形;对矩形所包含的对象进行碰撞检测,一般会采用缩小检测范围的方式,并在对象局部绑定一个或者多个规则图形的碰撞检测区,尽量让最终效果看起来更真实,通常把这种检测区称之为:内测盒子,但是该方法效率很低,步骤也非常繁琐,并且检测结果准确性较低。
申请号为:201210144554.X的中国专利公开了一种网络游戏中基于四叉树的场景管理方法,该方法包括:在任一所述场景中建立坐标系,任一分割所述场景的树结点以其所在所述坐标系中的坐标标识,并将所述场景中的各对象的对象ID与其所在的树结点所对应的坐标绑定记录;当对所述场景中任一对象进行碰撞检测时,根据所述对象的对象ID在当前所述记录中查找到的对应的坐标所对应的树结点,并确定该树结点及周围八个树结点中是否存在其他对象,如果是,确定存在与所述对象碰撞的对象;否则,确定不存在与所述对象碰撞的对象,但该方法通过八叉树的方法去检测,检测过程中计算机内存占用过大,存在碰撞检测过程中的效率不高的问题。
发明内容
本发明所要解决的技术问题是:提供一种碰撞检测方法及系统,提高了DOM结构中的对象碰撞检测的效率。
为了解决上述技术问题,本发明提供了一种碰撞检测方法,包括以下步骤:
S1:建立二维坐标系;
S2:获取第一DOM矩形结构图片和第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成Alpha值对集合;
S3:若所述Alpha值对集合中,存在一Alpha值对的两个Alpha值均不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象发生碰撞。
本发明还提供了一种碰撞检测系统,包括:
建立模块,用于建立二维坐标系;
计算模块,用于获取第一DOM矩形结构图片和第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成Alpha值对集合;
判断模块,用于若所述Alpha值对集合中,存在一Alpha值对的两个Alpha值均不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象发生碰撞。
本发明的有益效果:
本发明提供的一种碰撞检测方法,所述第一DOM矩形结构图片和所述第二DOM矩形结构所表示的对象的像素点的Alpha值不为0,其背景区域的像素点的Alpha值均为0;通过获取第一DOM矩形结构图片和第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成Alpha值对集合,若Alpha值对集合中存在一Alpha值对的两个Alpha值均不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构所表示的对象发生碰撞;上述方法只需检测出Alpha值对集合中存在一Alpha值对均不为0,则停止检测,在一定程度上提高了DOM结构中对象碰撞检测的效率;同时像素点的Alpha值进行像素级的检测,能够提高碰撞检测的准确性。
附图说明
图1为根据本发明实施例的一种碰撞检测方法的主要步骤示意图;
图2为根据本发明实施例一种碰撞检测系统的结构示意图;
标号说明:
1、建立模块;2、计算模块;3、判断模块。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图详予说明。
本发明最关键的构思在于:通过获取DOM中两个的矩形结构图片具有相同坐标的像素点的Alpha值,形成Alpha值对集合,若存在一Alpha值对的两个Alpha值均不为0,则矩形结构图片所表示的对象发生碰撞。
请参照图1,本发明提供的一种碰撞检测方法,包括以下步骤:
S1:建立二维坐标系;
S2:获取第一DOM矩形结构图片和第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成Alpha值对集合;
S3:若所述Alpha值对集合中,存在一Alpha值对的两个Alpha值均不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象发生碰撞。
从上述描述可知,所述第一DOM矩形结构图片和所述第二DOM矩形结构所表示的对象的像素点的Alpha值不为0,其背景区域的像素点的Alpha值均为0;通过获取第一DOM矩形结构图片和第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成Alpha值对集合,若Alpha值对集合中存在一Alpha值对的两个Alpha值均不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构所表示的对象发生碰撞;上述方法只需检测出Alpha值对集合中存在一Alpha值对均不为0,则停止检测,在一定程度上提高了DOM结构中对象碰撞检测的效率;同时像素点的Alpha值进行像素级的检测,能够提高碰撞检测的准确性。
进一步的,所述S1具体为:在HTML5的CANVAS画布建立所述二维坐标系。
从上述描述可知,在HTML5的CANVAS画布处理图片,能够获取图片像素点的Alpha值,以像素级别进行碰撞检测,提高了碰撞检测准确性。
进一步的,所述S2之前还包括:所述第一DOM矩形结构图片和所述第二DOM矩形结构图片的相对位置和尺寸不变地插入所述CANVAS画布中。
从上述描述可知,通过CANVAS画布对图片的处理方法能够检测出DOM的矩形结构图片中所表示的对象是否发生碰撞,同时矩形结构图片的相对位置和尺寸在DOM和CANVAS画布中是不变的,故所检测出的结果测能够准确地反应矩形结构图片所表示的对象的碰撞情况。
进一步的,所述S2具体为:
通过所述HTML5的API接口获取第一DOM矩形结构图片和第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成所述Alpha值对集合。
从上述描述可知,通过HTML5的API接口能够快速准确地提取CANVAS画布中图片的每一个像素点的Alpha值,提高像素点的Alpha值获取速率。
进一步的,所述S3具体为:
若所述Alpha值对集合中,存在一Alpha值对的两个Alpha值逻辑与运算的结果不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象发生碰撞;
若所述Alpha值对集合中,所有Alpha值对的两个Alpha值逻辑与运算的结果之和为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象没有发生碰撞。
从上述描述可知,通过像素级别的计算,能够提高矩形结构图片所表示的对象碰撞检测的准备性。
请参照图2,本发明提供的一种碰撞检测系统,包括:
建立模块1,用于建立二维坐标系;
计算模块2,用于获取第一DOM矩形结构图片和第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成Alpha值对集合;
判断模块3,用于若所述Alpha值对集合中,存在一Alpha值对的两个Alpha值均不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象发生碰撞。
从上述描述可知,所述第一DOM矩形结构图片和所述第二DOM矩形结构所表示的对象的像素点的Alpha值不为0,其背景区域的像素点的Alpha值均为0;通过获取第一DOM矩形结构图片和第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成Alpha值对集合,若Alpha值对集合中存在一Alpha值对的两个Alpha值均不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构所表示的对象发生碰撞;上述方法只需检测出Alpha值对集合中存在一Alpha值对均不为0,则停止检测,在一定程度上提高了DOM结构中对象碰撞检测的效率;同时利用像素点的Alpha值进行像素级的检测,能够提高碰撞检测的准确性。
请参照图1,本发明的实施例一为:
本发明提供的一种碰撞检测方法,包括以下步骤:
在HTML5的CANVAS画布建立所述二维坐标系;
第一DOM矩形结构图片和第二DOM矩形结构图片的相对位置和尺寸不变地插入所述CANVAS画布中;
通过所述HTML5的API接口获取所述第一DOM矩形结构图片和所述第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成所述Alpha值对集合;S3:若所述Alpha值对集合中,存在一Alpha值对的两个Alpha值均不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象发生碰撞。
从上述描述可知,如果检测出Alpha值对集合中存在一Alpha值对均不为0,则停止检测,在一定程度上提高了DOM结构中对象碰撞检测的效率;同时像素点的Alpha值进行像素级的检测,能够提高碰撞检测的准确性。
本发明的实施例二为:
在web游戏中,一个游戏人物在跑动过程中,前面有一个不规则或规则的障碍物,这时候人物撞到了障碍物就不能穿透过去,那么人物和障碍物是否发生碰撞,检测方法如下:通过在HTML5的CANVAS画布建立二维坐标系;获取人物所在的第一DOM矩形结构图片和障碍物所在的第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成Alpha值对集合;若所述Alpha值对集合中,存在一Alpha值对的两个Alpha值均不为0,则人物撞到了障碍物,这时人就不能穿越障碍物,否则会造成不同物体的干涉现象,影响游戏的体验。
本发明的实施例三为:
web应用领域,在教育的学科工具磁感线模拟器,小磁针在拖动时,不能和磁体发生碰撞,一旦碰撞就能继续移动小磁针,小磁针也不能与小磁针发生碰撞,碰撞了若继续移动小磁针和磁体影响教学效果;那么小磁针与磁体之间是否碰撞,可以在HTML5的CANVAS画布建立二维坐标系,获取小磁针所在的第一DOM矩形结构图片和磁体所在的第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成Alpha值对集合;若所述Alpha值对集合中,存在一Alpha值对的两个Alpha值均不为0,则小磁针与磁体发生碰撞。
请参照图2,本发明的实施例四为:
本发明提供的碰撞检测系统,包括:
建立模块1包括建立单元,所述建立单元,用于在HTML5的CANVAS画布建立所述二维坐标系;插入模块,用于第一DOM矩形结构图片和第二DOM矩形结构图片的相对位置和尺寸不变地插入所述建立单元所建立的二维坐标系中;计算模块2包括计算单元,所述计算单元,用于通过所述HTML5的API接口获取第一DOM矩形结构图片和第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成所述Alpha值对集合,并将所述Alpha值对集合传输给判断模块3;判断模块3包括第一判断单元和第二判断单元;所述第一判断单元,用于若所述Alpha值对集合中,存在一Alpha值对的两个Alpha值逻辑与运算的结果不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象发生碰撞;所述第二判断单元,用于若所述Alpha值对集合中,所有Alpha值对的两个Alpha值逻辑与运算的结果之和为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象没有发生碰撞。
综上所述,本发明提供的一种碰撞检测方法及系统,所述第一DOM矩形结构图片和所述第二DOM矩形结构所表示的对象的像素点的Alpha值不为0,其背景区域的像素点的Alpha值均为0;通过获取第一DOM矩形结构图片和第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成Alpha值对集合,若Alpha值对集合中存在一Alpha值对的两个Alpha值均不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构所表示的对象发生碰撞;上述方法只需检测出Alpha值对集合中存在一Alpha值对均不为0,则停止检测,在一定程序上提高了DOM结构中对象碰撞检测的效率;同时像素点的Alpha值进行像素级的检测,能够提高碰撞检测的准确性。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种碰撞检测方法,其特征在于,包括以下步骤:
S1:建立二维坐标系;
S2:获取第一DOM矩形结构图片和第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成Alpha值对集合;
S3:若所述Alpha值对集合中,存在一Alpha值对的两个Alpha值均不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象发生碰撞。
2.根据权利要求1所述的一种碰撞检测方法,其特征在于,所述S1具体为:
在HTML5的CANVAS画布建立所述二维坐标系。
3.根据权利要求2所述的一种碰撞检测方法,其特征在于,所述S2之前还包括:
所述第一DOM矩形结构图片和所述第二DOM矩形结构图片的相对位置和尺寸不变地插入所述CANVAS画布中。
4.根据权利要求2所述的一种碰撞检测方法,其特征在于,所述S2具体为:
通过所述HTML5的API接口获取第一DOM矩形结构图片和第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成所述Alpha值对集合。
5.根据权利要求1所述的一种碰撞检测方法,其特征在于,所述S3具体为:
若所述Alpha值对集合中,存在一Alpha值对的两个Alpha值逻辑与运算的结果不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象发生碰撞;
若所述Alpha值对集合中,所有Alpha值对的两个Alpha值逻辑与运算的结果之和为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象没有发生碰撞。
6.一种碰撞检测系统,其特征在于,包括:
建立模块,用于建立二维坐标系;
计算模块,用于获取第一DOM矩形结构图片和第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成Alpha值对集合;
判断模块,用于若所述Alpha值对集合中,存在一Alpha值对的两个Alpha值均不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象发生碰撞。
7.根据权利要求6所述的一种碰撞检测系统,其特征在于,所述建立模块包括:
建立单元,用于在HTML5的CANVAS画布建立所述二维坐标系。
8.根据权利要求7所述的一种碰撞检测系统,其特征在于,还包括:
插入模块,用于所述第一DOM矩形结构图片和所述第二DOM矩形结构图片的相对位置和尺寸不变地插入所述CANVAS画布中。
9.根据权利要求6所述的一种碰撞检测系统,其特征在于,所述计算模块包括:
计算单元,用于通过所述HTML5的API接口获取第一DOM矩形结构图片和第二DOM矩形结构图片中具有相同坐标的像素点的Alpha值,形成所述Alpha值对集合。
10.根据权利要求6所述的一种碰撞检测系统,其特征在于,所述判断模块包括:
第一判断单元,用于若所述Alpha值对集合中,存在一Alpha值对的两个Alpha值逻辑与运算的结果不为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象发生碰撞;
第二判断单元,用于若所述Alpha值对集合中,所有Alpha值对的两个Alpha值逻辑与运算的结果之和为0,则所述第一DOM矩形结构图片和所述第二DOM矩形结构图片所表示的对象没有发生碰撞。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710007139.2A CN106846443A (zh) | 2017-01-05 | 2017-01-05 | 一种碰撞检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710007139.2A CN106846443A (zh) | 2017-01-05 | 2017-01-05 | 一种碰撞检测方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106846443A true CN106846443A (zh) | 2017-06-13 |
Family
ID=59117079
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710007139.2A Pending CN106846443A (zh) | 2017-01-05 | 2017-01-05 | 一种碰撞检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106846443A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114265378A (zh) * | 2021-12-22 | 2022-04-01 | 中国核动力研究设计院 | Dcs逻辑算法图中算法页的元素布局及连线的处理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2009102124A (ru) * | 2009-01-22 | 2010-08-20 | Государственное научное учреждение Центральный научно-исследовательский и опытно-конструкторский институт робототехники и техническ | Устройство обработки видеоинформации системы охранной сигнализации |
CN103186372A (zh) * | 2011-12-29 | 2013-07-03 | 上海聚位网络科技发展有限公司 | 一种游戏引擎 |
CN103353863A (zh) * | 2013-05-29 | 2013-10-16 | 徐华 | 一种文本模板生成方法 |
CN103955957A (zh) * | 2014-04-22 | 2014-07-30 | Tcl集团股份有限公司 | 一种3d图形渲染方法及系统 |
CN106202806A (zh) * | 2016-07-25 | 2016-12-07 | 西南科技大学 | 一种用于虚拟实验的液体柱模拟方法 |
-
2017
- 2017-01-05 CN CN201710007139.2A patent/CN106846443A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2009102124A (ru) * | 2009-01-22 | 2010-08-20 | Государственное научное учреждение Центральный научно-исследовательский и опытно-конструкторский институт робототехники и техническ | Устройство обработки видеоинформации системы охранной сигнализации |
CN103186372A (zh) * | 2011-12-29 | 2013-07-03 | 上海聚位网络科技发展有限公司 | 一种游戏引擎 |
CN103353863A (zh) * | 2013-05-29 | 2013-10-16 | 徐华 | 一种文本模板生成方法 |
CN103955957A (zh) * | 2014-04-22 | 2014-07-30 | Tcl集团股份有限公司 | 一种3d图形渲染方法及系统 |
CN106202806A (zh) * | 2016-07-25 | 2016-12-07 | 西南科技大学 | 一种用于虚拟实验的液体柱模拟方法 |
Non-Patent Citations (1)
Title |
---|
黄燕荣: "基于视频输入的虚拟交互系统的设计与实现", 《中国优秀硕博士学位论文全文数据库(硕士)信息科技辑》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114265378A (zh) * | 2021-12-22 | 2022-04-01 | 中国核动力研究设计院 | Dcs逻辑算法图中算法页的元素布局及连线的处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103900503B (zh) | 提取形状特征的方法、安全检查方法以及设备 | |
CN103971399A (zh) | 街景图像过渡方法和装置 | |
CN104331918A (zh) | 基于深度图实时绘制室外地表遮挡剔除以及加速方法 | |
Wei et al. | Enhanced faster region convolutional neural networks for steel surface defect detection | |
CN105069754B (zh) | 基于在图像上无标记增强现实的系统和方法 | |
CN103268481A (zh) | 一种复杂背景图像中的文本提取方法 | |
US9595125B2 (en) | Expanding a digital representation of a physical plane | |
CN107247926B (zh) | 一种人体检测方法及装置 | |
CN109712131A (zh) | 肺结节特征的量化方法、装置、电子设备及存储介质 | |
CN110832542B (zh) | 识别处理设备、识别处理方法和程序 | |
CN106022266A (zh) | 一种目标跟踪方法及装置 | |
JP2015125685A (ja) | 空間構造推定装置、空間構造推定方法及び空間構造推定プログラム | |
US20090297055A1 (en) | Supervised edge detection using fractal signatures | |
CN107220703A (zh) | 一种基于多尺度检测的深度神经网络 | |
CN108960012A (zh) | 特征点检测方法、装置及电子设备 | |
CN106846443A (zh) | 一种碰撞检测方法及系统 | |
CN107633201A (zh) | 一种答题卡智能识别方法和系统 | |
CN104427210B (zh) | 一种随机异常闪烁点检测方法及装置 | |
CN105957237A (zh) | 一种纸币的版本识别方法和装置 | |
CN111260607B (zh) | 可疑物品自动检测方法、终端设备、计算机设备及介质 | |
CN104978752A (zh) | 用于芯片缺陷扫描的关注区域划分方法 | |
CN107145887B (zh) | 一种针对物体删除的缝裁剪图像定位取证方法 | |
Castelló et al. | Techniques for computing viewpoint entropy of a 3d scene | |
Chen | A corner matching algorithm based on Harris operator | |
CN112991294A (zh) | 异物检测方法、装置及计算机可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170613 |
|
RJ01 | Rejection of invention patent application after publication |