Как получить ширину и высоту CCSprite в cocos2d для iphone Чтобы вопрос xD Учитывая экземпляр CCSprite в cocos2d в iphone, какой метод я могу использовать для получения ширины и высоты изображения? Ответ 1 Класс 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; } Ответ 2 необработанная ширина: sprite.contentSize.width необработанная высота: sprite.contentSize.height текущая ширина: sprite.contentSize.width * sprite.scaleX Текущая высота: sprite.contentSize.height * sprite.scaleY Ответ 3 IN cocos2d-x sprite->boundingBox().size.width; sprite->boundingBox().size.height; Ответ 4 В cocos2d-x v3.x, boundingBox устарел в классе Node (т.е. суперкласс Sprite). Вместо этого используйте следующий код: auto spriteWidth = sprite->getTextureRect().size.width; auto spriteHeight = sprite->getTextureRect().size.height; или auto spriteWidth = sprite->getContentSize().width; auto spriteHeight = sprite->getContentSize().height;
Ответ 1 Класс 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; }
Ответ 2 необработанная ширина: sprite.contentSize.width необработанная высота: sprite.contentSize.height текущая ширина: sprite.contentSize.width * sprite.scaleX Текущая высота: sprite.contentSize.height * sprite.scaleY
Ответ 4 В cocos2d-x v3.x, boundingBox устарел в классе Node (т.е. суперкласс Sprite). Вместо этого используйте следующий код: auto spriteWidth = sprite->getTextureRect().size.width; auto spriteHeight = sprite->getTextureRect().size.height; или auto spriteWidth = sprite->getContentSize().width; auto spriteHeight = sprite->getContentSize().height;