cocos2d-js如何计算锚点不同的两个sprite的距离呢

初学cocos提个小问题,望大神解答:
如题,我使用cc.pDistance来计算两个sprite之间的距离,但是发现计算的时候忽视掉了sprite的锚点位置,即anchorX和anchorY。
测试代码如下:

— Begin quote from ____

var s1 = new cc.Sprite(‘res/heart.png’);
var s2 = new cc.Sprite(‘res/heart.png’);
s1.setPosition(cc.p(10, 10));
s2.setPosition(cc.p(100, 100));
this.addChild(s1);
this.addChild(s2);
cc.log(cc.pDistance(s1.getPosition(), s2.getPosition())); //127.27922061357856

    var s3 = new cc.Sprite('res/heart.png');
    var s4 = new cc.Sprite('res/heart.png');
    s3.anchorX = 0;
    s3.anchorY = 1;
    s3.setPosition(cc.p(-16, 36));
    s4.setPosition(cc.p(100, 100));
    this.addChild(s3);
    this.addChild(s4);
    cc.log(cc.pDistance(s3.getPosition(), s4.getPosition())); //132.48396129343357 

— End quote

s1与s3是重合的,s2与s4是重合的,也就是说,从视觉上,s1-s2的距离和s3-s4的距离是相同的。但是计算出来的距离却不同。这算是bug吗,还是我的用法有问题。

望高手能解答下这个问题。