- Cocos2d-x Cookbook
- Akihiro Matsuura
- 428字
- 2021-07-09 20:58:48
Manipulating sprites
A Sprite is a 2D image that can be animated or transformed by changing its properties, including its rotation, position, scale, color, and so on. After creating a sprite you can obtain access to the variety of properties it has, which can be manipulated.
How to do it...
You can change the sprite's rotation to positive or negative degrees.
sprite->setRotation(30.0f);
You can get the rotation value using getRotation
method.
float rotation = sprite->getRotation();
The positive value rotates it clockwise, and the negative value rotates it counter clockwise. The default value is zero. The preceding code rotates the sprite 30 degrees clockwise, as shown in the following screenshot:

You can change the sprite's scale. The default value is 1.0f
, the original size. The following code will scale to half size.
sprite->setScale(0.5f);
You can also change the width and height separately. The following code will scale to half the width only.
sprite->setScaleX(0.5f);
The following will scale to half the height only.
sprite->setScaleY(0.5f);
The following code will scale that width to double and the height to half.
sprite->setScale(2.0f, 0.5f);

You can change the sprite's skew, either by X
, Y
or uniformly for both X
and Y
. The default value is zero for both X
and Y
.
The following code adjusts the X
skew by 20.0
:
sprite->setSkewX(20.0f);
The following code adjusts the Y
skew by 20.0
:
sprite->setSkewY(20.0f);

You can change the sprite's color by passing in a Color3B
object. Color3B
has an RGB value.
sprite->setColor(Color3b(255, 0, 0));

You can change the sprite's opacity. The opacity property is set between a value from 0 to 255.
sprite->setOpacity(100);
The sprite is fully opaque when it is set to 255, and fully transparent when it is set to zero. The default value is always 255.

You can change the sprite's visibility by passing in a Boolean value. If it is false
, then the sprite is invisible; if it is true
, then the sprite is visible. The default value is always true
.
sprite->setVisible(false);
How it works...
A Sprite has a lot of properties. You can manipulate a sprite using the setter
and getter
methods.
RGB color is a 3 byte value from zero to 255. Cocos2d-x provides predefined colors.
Color3B::WHITE Color3B::YELLOW Color3B::BLUE Color3B::GREEN Color3B::RED Color3B::MAGENTA Color3B::BLACK Color3B::ORANGE Color3B::GRAY
You can find them by looking at the ccType.h
file in Cocos2d-x.
- SOA實踐
- 我的第一本算法書
- 網站構建技術
- SQL Server從入門到精通(第3版)
- PHP+MySQL+Dreamweaver動態網站開發從入門到精通(第3版)
- C++反匯編與逆向分析技術揭秘(第2版)
- MATLAB GUI純代碼編寫從入門到實戰
- OpenCV 3 Blueprints
- Application Development with Parse using iOS SDK
- ABAQUS6.14中文版有限元分析與實例詳解
- INSTANT Apache Hive Essentials How-to
- Responsive Web Design with jQuery
- Managing Windows Servers with Chef
- Flask Web開發實戰:入門、進階與原理解析
- 區塊鏈原理、架構與應用(第2版)