osgUI.Label
是 OpenSceneGraph 框架中的一个 UI 控件,可以用于显示一个标签,并支持文本、字体、大小、颜色等属性的设置。
使用 osgUI.Label
能够在场景中显示一个标签。在使用前需要设置标签显示的文本、字体、大小、颜色等属性。下面是一个示例代码:
osg::ref_ptr<osgUI::Label> label = new osgUI::Label();
label->setText("Hello World!");
label->setFont("arial.ttf");
label->setFontSize(24);
label->setTextColor(osg::Vec4(1.0f, 1.0f, 1.0f, 1.0f));
osgUI::Label();
void setText(const std::string& text);
设置标签显示的文本。例如 setText("Hello World!");
将使标签显示 "Hello World!"。
void setFont(const std::string& font);
设置标签显示的字体。例如 setFont("arial.ttf");
将使用 Arial 字体。
void setFontSize(int fontSize);
设置标签显示的字体大小。例如 setFontSize(24);
将使用大小为 24 的字体。
void setTextColor(const osg::Vec4& color);
设置标签显示的文本颜色。例如 setTextColor(osg::Vec4(1.0f, 1.0f, 1.0f, 1.0f));
将使用白色。
void setAlignment(osgText::TextBase::AlignmentType alignment);
设置标签显示的文本对齐方式。例如 setAlignment(osgText::TextBase::CENTER_BOTTOM);
将使文本居中底部对齐。
void setPosition(float x, float y, float z);
设置标签的位置。例如 setPosition(0.0f, 0.0f, 0.0f);
将使标签显示在场景中心。
osg::ref_ptr<osg::Node> getNode();
获取标签节点。使用 osgDB::writeNodeFile()
可以将标签输出为图片。