判断单一方向的碰撞,但是效果体现不出来,求大佬指点

存在两个物体,都带有BoxCollider,碰撞方式有 A-B顶部碰撞,B-C侧面碰撞,我写的是
cc.Class({
extends: cc.Component,

properties: {
    _box1:null,
    _box2:null,
    _xGet:false,
    _yGet:false,
},

onLoad:function () {
let manager = cc.director.getCollisionManager();
manager.enabled = true;
manager.enabledDebugDraw = true;
manager.enabledDrawBoundingBox = true;
this._xGet=false,
this._yGet=false;
},

start:function () {
   this._box1=cc.find("Canvas/box1");
   this._box2=cc.find("Canvas/box2");
},

 update:function (dt) {
   //每帧检测是否碰撞
      let tap1=this._box1.getComponent(cc.BoxCollider);//获取box
      let tap2=this._box2.getComponent(cc.BoxCollider);
      let rect01=tap1.world;//获取box的世界坐标
      let rect02=tap2.world;
      let ab1=rect01.aabb;//获取当前box包围盒的信息
      let ab2=rect02.aabb;
      let fab1=rect01.preAabb;//获取上一帧box包围盒的信息
      let fab2=rect02.preAabb;
      fab1.x=ab1.x;
      fab2.x=ab2.x;
      if(Math.abs(this._box1.x-this._box2.x)<=Math.abs(fab1.xMax-fab1.xMin)/2+Math.abs(fab2.xMax-fab2.xMin)/2)
      {//判断是不是x方向存在碰撞
          cc.log('xget');
      }
      else
      {//如果不是x方向碰撞
          cc.log('xnotget');
      };

      if(Math.abs(this._box1.y-this._box2.y)<=Math.abs(fab1.yMax-fab1.yMin)/2+Math.abs(fab2.yMax-fab2.yMin)/2)
      {//判断是不是y方向碰撞
        cc.log('yget');
      }
      else
      {//如果不是y方向的碰撞
        cc.log('ynotget');
      };
 },

});
可是判断不了,碰撞时哪一种,求大佬们看看