如何找到CCSprite的中心点?
我的伪代码是:
A get sprite bounding box
B compute center point of the sprite
C move center point relative to sprite position and anchor point (this will be the center point of the sprite)
我的假分辨率是这样的:
[sprite boundingbox] B How to find the Center Coordinate of Rectangle? C我不知道:))
有什么建议吗?
答案 0 :(得分:5)
精灵的中心点:
sprite.position;
这假设anchorPoint处于默认状态,即0.5,0.5,强烈建议不要更改它,因为它确实让你处于这种状态。
不是更改精灵的anchorPoint,而是将精灵添加到CCNode对象作为子节点,并将精灵从CCNode中偏移。从那时起,通过改变节点的位置属性来移动或重新定位精灵。
答案 1 :(得分:2)
CGPoint spriteCenter = CGPointApplyAffineTransform(ccp(sprite.contentSize.width/2, sprite.contentSize.height/2),
sprite.nodeToParentTransform);
答案 2 :(得分:0)
默认情况下,任何精灵的锚点都是它的中心点,只需编写mySprite.position就会给出CGPoint的中心点。你可以使用mySprite.position.x和mySprite.position找出x和y坐标。 .y。你也可以使用代码
将任何精灵的锚点从其中心移动到任何所需的点mySprite.setAnchorPoint=ccp(0,0);// left down corner as anchor point here
您可以获取并打印任何精灵的中心点
NSLog("x=%d ,y=%d",mySprite.position.x,mySprite.position.y);