7, 碰撞检测, 精确非精确

import tr = egret.sys.tr;

class Main extends egret.DisplayObjectContainer {

    public constructor() {
        super();
        this.once(egret.Event.ADDED_TO_STAGE, this.start, this);
    }

    private start(event:egret.Event) {
        /**
         * 绘制一个 100 * 100 的红色正方形
         */
        var shp:egret.Shape = new egret.Shape();
        shp.graphics.beginFill(0xff0000);
        shp.graphics.drawRect(0,0,100,100);
        shp.graphics.endFill();
        shp.x = 11;
        shp.y = 11;
        this.addChild(shp);
        /**
         * 判断该正方形是否和 某个 点发生碰撞
         * 返回 bool 值
         * 该方法第三个参数, 表示是否开启精确碰撞检测
         * 大量使用精确碰撞检测会消耗性能
         */
        var isHit:boolean = shp.hitTestPoint(10, 10, true); 

        if(isHit) {
            console.log("发生了碰撞!")
        } else {
            console.log("未发生碰撞!")
        }
    }

}
时间: 2024-10-11 04:35:08

7, 碰撞检测, 精确非精确的相关文章

8051单片机软件精确延时研究(一)

前言 最近自学51单片机,编程中如流水灯等非精确延时多用软件延时实现,写了几个类似DelayX10us(unsigned char x)的函数方便调用,函数内部的语句多是用官方延时程序再自己套一个for或者do..while循环改造而成,像这样: //非精确延时10*Xus//@12.000MHz 12T模式 void DelayX10us(unsigned char x) { unsigned char i; for (; x > 0; x--) { _nop_(); i = 2; while

hdu 1426 Sudoku Killer ( Dancing Link 精确覆盖 )

利用 Dancing Link 来解数独 具体的可以看    lrj 的训练指南 和 < Dancing Links 在搜索中的应用 >这篇论文 Dancing Link 来求解数独 , 是通过求解精确覆盖 精确覆盖就是给出一个 01 矩阵 , 要求我们选择一些行 , 使得每一列有且仅有一个 1 对于数独问题 , 行就是我们的选择 , 即在第 i 行 第 j 列 放上 数字 k , 所以我们最多有 i * j * k 中选择 如果某些位置( x , y  )已经放了数字 a , 那么我们的选择

JavaScirpt精确计算

JavaScript精确加法 function accAdd(arg1,arg2){ var r1,r2,m; try{r1=arg1.toString().split(".")[1].length}catch(e){r1=0} try{r2=arg2.toString().split(".")[1].length}catch(e){r2=0} m=Math.pow(10,Math.max(r1,r2)); return (accMul(arg1,m)+accMul

物理引擎中不规则物体的碰撞检测

在运用物理引擎的时候,经常回出现这种情况,不规则物体的碰撞检测无法更加精确的测量,那么,小杰今天就带您一起解决这个问题!!! 首先下载一个windows下面的软件 名称是:PhysicsEditor ,这个软件可以帮助你设计不规则的图形.软件的使用方法在这里不具体讲解了,说一下注意的问题,添加进精灵后 :按照这个步骤走 好了,这时候 做完了就会生成 plist文件,把它和png图片一起拷进资源目录下面: 定义一个成员方法: std::vector<std::vector<Vec2>>

cocos2dx基础篇(27)——简单碰撞检测

[唠叨] 本节来讲讲简单的物理碰撞检测(非Box2D物理碰撞):矩形.圆之间的碰撞检测. [简单碰撞检测] 在一些游戏中经常会遇到碰撞检测的情况,如愤怒的小鸟飞出去后,是否与石头发生碰撞. 虽然说有一个Box2D物理碰撞引擎,但是在这里还是需要掌握一下简单的碰撞检测方法. (1)矩形与矩形 (2)圆与圆 (3)矩形与圆 1.矩形与矩形 1.1.提出问题 问题:假设有两个矩形rect1,rect2,判断两矩是否碰撞相交(部分区域重叠). 如下四幅图中,图1.2.4发生碰撞,图3未发生碰撞.    

find命令学习

find命令与locate命令的区别: locate: 非实时查找: 依赖于索引,而索引构建非常占用资源,索引的创建是在系统空闲时系统自动进行,可以用updatedb命令更新索引: 查找速度快: 非精确查找: find:递归地在层次目录中搜索符合条件的文件: 实时查找: 精准查找 (系统上实时的有就是有没有就是没有): 精确查找 (查找结果绝对符合查找条件才予显示): 查找速度慢: find使用方法:默认使用当前目录: find  [搜索路径]  [搜索条件]  [处理动作] find搜索条件

博客重写

基础知识 硬件设备接口非常底层和简陋,叫硬件规格,不同厂商生产的接口不一样,写一款程序,多个机器都能运行,叫高级语言,但高级语言在哪里跑,需要编译器编译,汇编器汇编,才能在主机上运行.应用程序跑在硬件上意味程序需要驱动各种硬件,写程序之前还要写驱动,非常困难.所以有了操作系统内核:kernel,来应对硬件的复杂性. 操作系统研发非常困难,目前国内还没有像样的操作系统.linux内核,支持所有cpu,内核源代码编译成所有机器的机器语言.现在的嵌入式系统大多数都是跑linux.kernel把底层的复

Linux文件搜索工具--find、locate

文件查找 在文件系统上查找符合条件的文件: 文件查找: locate, find 非实时查找(数据库查找): locate 实时查找: find 1. 非实时查找(数据库查找): locate 查询系统上预建的文件索引数据库  (基于此数据库搜索) 数据库:  /var/lib/mlocate/mlocate.db 依赖于事先构建的索引 索引的构建是在系统较为空闲时自动进行(周期性任务), 管理员手动更新数据库 :  updatedb (新建立的文件,需要更新数据库以后才能搜索到,所以适合查找比

Google 发布 Android 性能优化典范

2015年伊始,Google发布了关于Android性能优化典范的专题, 一共16个短视频,每个3-5分钟,帮助开发者创建更快更优秀的Android App.课程专题不仅仅介绍了Android系统中有关性能问题的底层工作原理,同时也介绍了如何通过工具来找出性能问题以及提升性能的建议.主要从三个 方面展开,Android的渲染机制,内存与GC,电量优化.下面是对这些问题和建议的总结梳理. 0)Render Performance 大多数用户感知到的卡顿等性能问题的最主要根源都是因为渲染性能.从设计