对于两个初始时设置为Sensor的刚体,不会触发preSolve和postSolve
Main.as
package{
import Box2D.Common.Math.b2Vec2;
import Box2D.Dynamics.b2Body;
import Box2D.Dynamics.Contacts.b2Contact;
import Box2D.Collision.b2Manifold;
import Box2D.Dynamics.b2ContactImpulse;
public class Main extends BaseMain{
public function Main(){
super(new b2Vec2(0,0));
}
override protected function init():void{
var boxA:b2Body=createBox(30,30,50,300);
var boxB:b2Body=createBox(40,40,700,300);
boxA.SetUserData({type:"boxA"});
boxB.SetUserData({type:"boxB"});
boxA.SetSensor(true);
boxB.SetSensor(true);
boxA.SetPreSolveCallback(preSolve);
boxA.SetContactBeginCallback(contactBegin);
boxA.SetContactEndCallback(contactEnd);
boxA.SetPostSolveCallback(postSolve);
}
private function contactBegin(contact:b2Contact,other:b2Body):void{
trace("contactBegin:"+other.GetUserData().type);
}
private function contactEnd(contact:b2Contact,other:b2Body):void{
trace("contactEnd:"+other.GetUserData().type);
}
private function postSolve(contact:b2Contact,impulse:b2ContactImpulse,other:b2Body):void{
trace("postSolve:"+other.GetUserData().type);
}
private function preSolve(contact:b2Contact,oldManifold:b2Manifold,other:b2Body):void{
trace("preSolve:"+other.GetUserData().type);
}
override protected function stepBefore():void{
}
};
}

测试源码:链接:http://pan.baidu.com/s/1bpELP6n 密码:pep2
对于两个初始时设置为Sensor的刚体,不会触发preSolve和postSolve的更多相关文章
- CSAPP读书随笔之一:为什么汇编器会将call指令中的引用的初始值设置为-4
CSAPP,即<深入理解计算机系统:程序员视角>第三版,是一本好书,但读起来确需要具备相当的基本功.而且,有的表述(中译文)还不太直白. 比如,第463页提到,(对于32位系统)为什么汇编 ...
- [转]Loadrunner11之VuGen运行时设置Run-Time Setting
转自:http://www.51testing.com/html/92/450992-248065.html General 1.Run Logic运行逻辑 脚本如何运行的,每个action和acti ...
- LoadRunner 学习笔记(2)VuGen运行时设置Run-Time Setting
定义:在Vugen中Run-Time Setting是用来设置脚本运行时所需要的相关选项
- Java中HashMap的初始容量设置
根据阿里巴巴Java开发手册上建议HashMap初始化时设置已知的大小,如果不超过16个,那么设置成默认大小16: 集合初始化时, 指定集合初始值大小. 说明: HashMap使用HashMap(in ...
- SqlServer 更改复制代理配置文件参数及两种冲突策略设置
原文:SqlServer 更改复制代理配置文件参数及两种冲突策略设置 由于经常需要同步测试并更改代理配置文件属性,所以总结成脚本,方便测试. 可更新订阅的冲突策略有两种情况:一是在发布中冲突,即订阅数 ...
- Linux-1.1root初始密码设置,切换root用户
Ubuntu安装好后,root密码需要自己设置 root初始密码设置 sudo passwd root 权限不够时,切换root su 回车后输入密码 exit 退出登录的账户
- 阿里巴巴Java开发手册建议创建HashMap时设置初始化容量,但是多少合适呢?
集合是Java开发日常开发中经常会使用到的,而作为一种典型的K-V结构的数据结构,HashMap对于Java开发者一定不陌生. 关于HashMap,很多人都对他有一些基本的了解,比如他和hashtab ...
- 关于js中两种定时器的设置及清除
1.JS中的定时器有两种: window.setTimeout([function],[interval]) 设置一个定时器,并且设定了一个等待的时间[interval],当到达时间后,执行对应的方法 ...
- listview当选中某一个item时设置背景色其他的不变
listview当选中某一个item时设置背景色其他的不变: 可以使用listview.setOnFoucsChangeListener(listener) ; /** * listview获得焦点和 ...
随机推荐
- CAP在MySQL的分析
此文转载在登博的文章,给大家分享 问题一:数据一致性.在不使用共享存储的情况下,传统RDBMS(例如:Oracle/MySQL/PostgreSQL等),能否做到在主库出问题时的数据零丢失. 问题二: ...
- $.extend与$.fn.extend()
很多情况下,用户需要对jQuery插件进行二次开发,那么我们来看看JQ原开发者为我们提供的两种扩展插件的方式如下: 1.类别类:相当于为jquery扩展一个类,比如现在我要扩展一个简单的想加的功能函数 ...
- 腾讯微信被怼,iOS版微信不能打赏了
2017年4月19日,估计很多有着大量粉丝的微信自媒体作者会感到很不爽,因为他们的苹果粉丝再也无法很爽快地.肆意.任性地打赏他们了,按目前iphone手机的占有率,估计打赏率会掉一半以上. 据微信派微 ...
- lua 安装
1:下载安装 curl -R -O http://www.lua.org/ftp/lua-5.3.0.tar.gz tar zxf lua-5.3.0.tar.gz cd lua-5.3.0 make ...
- HDFS高级功能
HDFS的六大高级特性: 安全模式 安全模式是HDFS所处的一种特殊状态,在这种状态下,文件系统只接受读数据请求,而不接受删除.修改等变更请求.在NameNode主节点启动时,HDFS首先进入安全模式 ...
- Centos7使用pxe安装KVM虚拟机
Centos7使用pxe安装KVM虚拟机 一.安装服务所需的软件 [root@localhost ~]yum install nginx dhcp vsftpd syslinux -y [root@l ...
- studio2.3app签名打包安装失败,找不到签名证书。
Androidstudio升级到2.3后,打包时和之前不一样了. 如果只选择V2,是未签名的.所以要把V1和V2都打勾.
- es6基础(4)--字符串扩展
//字符串扩展 { console.log('a','\u0061'); console.log('s','\u20BB7');//超过了0xffff console.log('s','\u{20BB ...
- properties文件读取
package properties; import java.io.FileInputStream; import java.io.FileNotFoundException; import jav ...
- vuejs实现瀑布流布局(二)
瀑布流布局已然完成,那么剩下的就是另一个比较大的工程了——无限加载. 之前说了,这个活动项目是基于SUI-Mobile搭建的,所以可以直接使用sui内建组件“无限加载”来实现这个功能. 没有真实的数据 ...