获取精灵一部分的位置

Posted

技术标签:

【中文标题】获取精灵一部分的位置【英文标题】:Getting the location of a section of a sprite 【发布时间】:2013-06-22 22:08:25 【问题描述】:

下面的代码创建一个精灵并分配锚点和旋转。精灵会旋转很多,有没有办法获得精灵右下角的位置。就像,精灵锚点是(0,1),我可以获得锚点(1,1)的位置点吗?这样即使精灵在旋转,我也总能得到相同的位置?

tempsprite = [CCSprite spriteWithSpriteFrameName:@"image.png"];
tempsprite.rotation += 90;
tempsprite.anchorPoint = ccp(0,1);
tempsprite.position = tempsprite;
[self addChild:tempsprite];

【问题讨论】:

【参考方案1】:

好的,所以我想办法以防万一有人遇到与我类似的问题。

int length = 100;
int offset = 50

CGFloat angle = ([self findangle]+offset) * M_PI/180;
CGPoint startpoint1 = startingpoint;
CGPoint endPoint1 =
CGPointMake( startpoint1.x + ( sinf( angle ) * length ), startpoint1.y + ( cosf( angle ) * length ) );


return endPoint1;

【讨论】:

以上是关于获取精灵一部分的位置的主要内容,如果未能解决你的问题,请参考以下文章

按键精灵 怎么让鼠标移动到固定位置

根据其他对象的位置在圆周上绘制精灵

如何在 Java 中提取此图像的一部分? [关闭]

Cocos2d V3 - 获取当前精灵位置?

图像精灵-如何获得图像的一部分

防止 g++ 添加额外的精灵部分