cocos2d-x AnchorPoint锚点

cocos2d-x AnchorPoint锚点,第1张

概述http://blog.csdn.net/xuguangsoft/article/details/8425623 锚点是定位和变换 *** 作的一个重点。锚点我们可以看成用一根图钉将一张纸或者相片钉在墙上的那个点。 节点的位置是由我们设置的position和anchor point一起决定的。 值得一提的是,anchor point的默认位置Layer的是左下,而其他的node是中点。 节点的原点是父节点

http://blog.csdn.net/xuguangsoft/article/details/8425623

锚点是定位和变换 *** 作的一个重点。锚点我们可以看成用一根图钉将一张纸或者相片钉在墙上的那个点。

节点的位置是由我们设置的positionanchorpoint一起决定的。

值得一提的是,anchorpoint的默认位置Layer的是左下,而其他的node是中点。

节点的原点是父节点的左下角。

[cpp] view plain copy cclayer*layer1=cclayercolor::create(ccc4(255,255),300,200); cclayer*layer2=cclayercolor::create(ccc4(255,100,100);   addChild(layer1); layer1->addChild(layer2);
copy layer2->setposition(50,50);

可见Layer的锚点是左下角,节点的原点是父节点的左下角。

再看一个:

copy CCSprite*p1=CCSprite::create("HelloWorld.png",CCRectMake(100,100)); CCSprite*p2=CCSprite::create("girl1.png"); addChild(p1); p1->addChild(p2);//p2作为p1的子节点 setposition(200,200);//Layer的原点移到200,200

设置锚点:

LayerSprite有不同,layer要设置锚点,必须先:ignoreAnchorPointForposition(false);

copy addChild(layer1); layer1->addChild(layer2); /*layer1->ignoreAnchorPointForposition(false);*/ layer1->setAnchorPoint(ccp(0.5,0.5));
copy layer1->ignoreAnchorPointForposition(false);

Sprite不用设置即可。

copy p1->addChild(p2); p2->setAnchorPoint(ccp(1,1)); setposition(200,200);

和前面第三个图比较一下就了解了。小女孩的锚点已经到了红色点位置



锚定点(setAnchorPoint)可以配置 0 到 1 之间的值,一般常用 0、0.5 与 1,分别表示 X 轴的左、中与右,或者 Y 轴的上、中与下,例如 [0,0] 表示左上,[1,1] 表示右下,[0.5,0.5] 表示正中。

总结

以上是内存溢出为你收集整理的cocos2d-x AnchorPoint锚点全部内容,希望文章能够帮你解决cocos2d-x AnchorPoint锚点所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1056208.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存