osgUtil.PrintVisitor
是一个遍历场景图的工具类,它可以将场景图的节点信息打印出来。
PrintVisitor(bool traverseDrawables = true);
traverseDrawables
: 是否遍历节点中的可绘制对象,默认为true
。virtual void apply(osg::Node& node);
node
节点,并将节点信息打印输出。virtual void apply(osg::Geode& geode);
geode
节点,并将节点信息打印输出。virtual void apply(osg::Drawable& drawable);
drawable
节点并将相应信息打印输出。// 创建场景图
osg::ref_ptr<osg::Node> root = createSceneGraph();
// 创建遍历器
osg::ref_ptr<osgUtil::PrintVisitor> pv = new osgUtil::PrintVisitor;
// 遍历场景图
root->accept(*pv);
打印输出的结果如下:
osg::Group [0x1059fd130] NPS
[...]