首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从.csb加载的节点的边框大小为0。

从.csb加载的节点的边框大小为0。
EN

Stack Overflow用户
提问于 2015-11-11 22:09:50
回答 1查看 128关注 0票数 0

我创建了Node (里面有图像和标签),我实例化并添加到场景中(在C++代码中)

代码语言:javascript
运行
复制
    auto item_one = CSLoader::createNode("item.csb");
    sprite->addChild(item_one);
    auto r = item_one->getBoundingBox();

而且它是可见的,但是r总是有widthheight等于zero。这就是为什么我无法获取该项目的原因之一。为什么边框为零,以及如何改变它?在cocos studio Node中,item的维度为542 x 542,但是。有人能帮忙吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-12 09:25:17

CSLoader::createNode("fileName.csb")加载整个场景/层(取决于您创建的内容)。如果您想要特定子级的维度,请使用:

代码语言:javascript
运行
复制
auto imageNode = item_node->getChildByName("NameOfChildInCocostudio");
auto spriteImage = dynamic_cast<Sprite*>(imageNode);
auto spriteBoundingBox = spriteImage->getBoundingBox();

此时,您应该得到图像的宽度和高度。如果您想要的大小,它出现在您必须乘以边界与节点规模。使用下面的代码来完成这个任务。

代码语言:javascript
运行
复制
auto onScreenWidth = spriteBoundingBox.width * spriteNode->getScaleX();
auto onScreenHeight = spriteBoundingBox.height * spriteNode->getScaleY();

如果这有帮助的话请告诉我。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33660802

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档