PhysicsContactData里的normal归属倒是是什么?

我现在要处理碰撞事件,在begin里面获取了PhysicsContactData,然后希望能够得到一个数据指出碰撞点在我的物理实体哪个位置,我现在的物理形状是一个矩形且不能旋转,那么碰撞的时候可以通过法向量PhysicsContactData.normal来获取,于是乎在下边碰撞的时候normal.y应该是1.大多数情况下是正确的,但是少数有时候是-1,但是我检查了PhysicsContactData.points记录的碰撞点都是正确的,所以我怀疑这个normal的归属问题。

如果说这个normal是根据我希望处理的矩形来生成的,那么下底边碰撞就应该是normal.y=1.但是如果这个时候是根据被碰撞的物体生成的normal 那么是不是就应该变成-1了?那么这个normal如何去使用,具体的在chipmunk里面如何去找到它的归属?cocos2dx有提供接口吗?

另外问一个题外的,chipmunk提供了post-step用于在碰撞的过程中延迟改变物理实体的大小等,那么这个API并没有被cocos2dx封装,我只能使用schedule吗?

最后我发现是碰撞检测里面的那个shapeA和shapeB位置不同有可能会呈现出是相反数的情况。

敢问楼主问题如何了,我现在也有类似疑问