1

我在 Cocos2d 中有两个 CCNode,我想动态地相互同步缩放。两个 CCNode 都是后台节点。从视觉上看,一个 CCNode NodeA 在 y 方向上位于另一个 CCNode NodeB 之上。但是当我在下面的代码中同时缩放两个节点时:

编辑#1 -

节点 B 是 CCLayer、HUDLayer 的一部分。HUDLayer 无法扩展,但 HUDLayer 中的 NodeB 可以扩展。所以代码看起来像

NodeA.anchorPoint = ccp(0.5f, 0.0f);
NodeA.scale = scale;
HUDLayer.NodeB.anchorPoint = ccp(0.5f, 0.0f);
HUDLayer.NodeB.scale = scale;

4)  Would NodeB being part of a CCLayer effect the Nodes scaled relative positions?

结束编辑#1

编辑#2

 The contentSize of CCNode is (0,0).  How do I set the contentSize of CCNode manually?

结束编辑#2

编辑#3

我发现这篇文章,其中一个答案谈到了将 CCNode 的 relativeToAnchorPoint 属性设置为 YES。我在 Google 上找不到如何执行此操作。有谁知道如何设置 relativeToAnchorPoint?

结束编辑#3

NodeA 在 y 方向下降到 NodeB 之下。所以这带来了几个问题:

1)  Are CCNodes scaled with respect to an anchorPoint?
2)  Why is NodeA dropping below NodeB in the y direction?
3)  How can two CCNodes be scaled with their relative positions remaining constant?
4

1 回答 1

3
  1. 是的
  2. 特别是如果它们的尺寸不同,请参见 1
  3. 将它们的锚点设置为 0.5,0 以便在缩放时它们都在底部对齐
于 2013-03-25T08:15:50.960 回答