开源共享原则
此文章参考至OSG程序设计-杨石兴。转载请附带出处
一 模型控制操作
1.添加模型
在 OSG 当中模型是使用 osg::Group 和 osg::Node 来装载在一起的,比如同时需要加入两个模型,模型 A 了
模型 B, AB 各自是一个 NODE,那么可以使用以下语句来做到,首先使用一个 Group,然后 Group ->addChild(A),
同样,之后要 Group->addChild(B)。然后再把 Group 添加到 viewer 当中就可以了。如图 3.1 所示 AB 之间的
关系。在这里要申明的是 NODE是 Group 的父类,在类中都有相应的方法可以转到对方,故 Node与 Group
是通用的,Node 也可以被当作 Group 来用。
例如
1.#include <osgDB/ReadFile>
2.#include <osgViewer/Viewer>
3.#include <osg/Node>
4.void main()
5.{
6. osgViewer::Viewer viewer;
7. osg::Group * root = new osg::Group() ;
8. root ->addChild(osgDB::readNodeFile("glider.osg")) ;
9. root ->addChild(osgDB::readNodeFile("osgcool .osg")) ;
10. viewer.setSceneData(root);
11. viewer.realize();
12. viewer.run();
13}