7, 碰撞检测, 精确非精确
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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("未发生碰撞!")
}
}
}
以上是关于7, 碰撞检测, 精确非精确的主要内容,如果未能解决你的问题,请参考以下文章
unity3d怎么做碰撞?unity3d如何添加碰撞体?求解!
采用非精确线搜索求步长的Armjio准则--MATLAB实现