30

それが質問です xD

iPhone の cocos2d で CCSprite のインスタンスが与えられた場合、画像の幅と高さを取得するためにどのような方法を使用できますか?

4

5 に答える 5

54

CCSprite クラスには、CGRect である境界ボックス プロパティがあります。

  CCSprite *sprite = [CCSprite spriteWithFile: @"file.png"];
  int width = [sprite boundingBox].size.width;

CCSprite サブクラスに幅と高さのメソッドを追加しました。

-(CGFloat) width
{
    return [self boundingBox].size.width;
}

-(CGFloat) height
{
    return [self boundingBox].size.height;
}
于 2010-03-31T11:59:58.363 に答える
39

生の幅:
sprite.contentSize.width

生の高さ:
sprite.contentSize.height

現在の幅: sprite.contentSize.width * sprite.scaleX

現在の身長: sprite.contentSize.height * sprite.scaleY

于 2010-04-14T08:55:29.387 に答える
0

cocos2d-x v3.x では、 Nodeクラス (つまりSpriteboundingBoxのスーパー クラス)で非推奨になりました。代わりに次のコードを使用してください。

auto spriteWidth = sprite->getTextureRect().size.width;
auto spriteHeight = sprite->getTextureRect().size.height;

また

auto spriteWidth = sprite->getContentSize().width;
auto spriteHeight = sprite->getContentSize().height;
于 2014-08-01T08:04:49.743 に答える
0

in cocos2d-x

sprite->boundingBox().size.width;

sprite->boundingBox().size.height;
于 2013-11-11T11:43:35.780 に答える