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()函数如下其中加粗字体显示的是我们添加的代码。
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;
}
Hello World设置了anchorPoint为(1.0,1.0)。
《Cocos2d-x实战 C++卷》现已上线各大商店均已开售
京东http://item.jd.com/11584534.html
当当http://product.dangdang.com/23606265.html
互动出版网http://product.china-pub.com/3770734
《Cocos2d-x实战 C++卷》源码及样章下载地址
源码下载地址http://51work6.com/forum.php?mod=viewthread&tid=1155&extra=page%3D1
样章下载地址http://51work6.com/forum.php?mod=viewthread&tid=1157&extra=page%3D1