RotateBy Anchorpoint 不影响旋转

RotateBy Anchorpoint not affecting rotation

在Cocos2d (Android, JAVA) 中,我使用 CCRotateBy 旋转一个 CCNode,其中有几个瓦片作为子节点。我想使用中心图块的中心作为旋转点,所以我想我会使用锚点。

但是,无论我为锚点赋予什么值,图块都会围绕屏幕左下方旋转。怎么来的?

(tiles 是 CCNodes,收集在两个列表中,tilesSelected 和 secondaryTilesSelected)

            // I create one node which holds all the tiles I want to rotate
            CCNode tilesToRotate = CCNode.node();

            tilesToRotate.addChild(tilesSelected.get(0), 0, 99);
// then, I add the 4 tiles around the previous, center tile

            for (int i=0; i < secondaryTilesSelected.size(); i++){

                tilesToRotate.addChild(secondaryTilesSelected.get(i), 0, 99);
            }
            // So, if I change 700,700 hereunder to different values, it doesn't change the centerpoint for Rotation. I guess I don't get it...

            addChild(tilesToRotate);
            tilesToRotate.setAnchorPoint(CGPoint.make(700,700));
            CCAction r90 = CCRotateBy.action(1f, 90f);
            tilesToRotate.runAction(r90);

anchorPoint 是 0,0(左下角)到 1,1(内容的右上角)范围内的一个因子

您将锚点设置得离节点 700,700 太远