cocos2d-x中Node中重要的属性
Node还有两个非常重要的属性:position和anchorPoint。
position(位置)属性是Node对象的实际位置。position属性往往还要配合使用anchorPoint属性,为了将一个Node对象(标准矩形图形)精准的放置在屏幕某一个位置上,需要设置该矩形的锚点,anchorPoint是相对于position的比例,默认是(0.5,0.5)。我们看看下面的几种情况:
以anchorPoint为(0.5,0.5)为例,这是默认情况。
下面是anchorPoint为(0.0,0.0)情况。
下面是anchorPoint为(1.0,1.0)情况。
下面是anchorPoint为(0.5,0.66)情况。
为了进一步了解anchorPoint使用,我们修改HelloWorld实例,修改HelloWorldScene.cpp的HelloWorld::init()函数如下,其中加粗字体显示的是我们添加的代码。
- <span style="font-size:14px;">bool HelloWorld::init()
- {
- … …
- auto label = LabelTTF::create("Hello World","Arial", 24);
- label->setPosition(Point(origin.x + visibleSize.width/2,
- origin.y +visibleSize.height - label->getContentSize().height));
- label->setAnchorPoint( Point(1.0, 1.0) );
- this->addChild(label, 1);
- auto sprite = Sprite::create("HelloWorld.png");
- sprite->setPosition(Point(visibleSize.width/2 + origin.x,visibleSize.height/2 + origin.y));
- this->addChild(sprite, 0);
- return true;
- }</span>
Hello World设置了anchorPoint为(1.0,1.0)。
相关推荐
Cricket 2020-05-31
woxmh 2019-12-30
CaptainCTR 2019-12-19
86463960 2013-07-15
80487916 2013-07-06
86463960 2013-08-28
BenOnceMore 2013-08-26
89741733 2014-03-20
86201242 2014-05-13
85427010 2014-09-04
文艺小青年 2015-03-26
cooclc 2015-03-26
85427010 2015-05-22
frankwang 2015-05-19
80487916 2015-05-18
进入场景而且过渡动画结束时候触发。提示 GameScene场景中的继承于节点,这些生命周期事件根本上是从Node继承而来。事实上所有Node对象都有这些事件,具体实现代码与GameScene场景类似。
87921036 2015-05-12
85427010 2011-12-31
yizhiyanstart 2011-12-31