OSG学习笔记8-多视景器系统

本文介绍OSG中的osgViewer::CompositeViewer类,它用于创建和管理多个视图。通过调用addView方法可以添加视图,并使用setUpViewInWindow方法快速设置视图在窗口中的位置和大小。
摘要由CSDN通过智能技术生成

//多视景器系统,打开了3个窗口,每个窗口对应一个视图对象viewer,并使用多视景器系统来管理这3个视图。
#include "stdafx.h"
#include<osg/Group>
#include<osgDB/ReadFile>
#include<osgViewer/CompositeViewer>



int main(int argc, char**argv)
{
	osg::ref_ptr<osgViewer::View> view1 = new osgViewer::View;
	view1->setUpViewInWindow(0, 50, 320, 240);
	view1->setSceneData(osgDB::readNodeFile("cow.osg"));

	osg::ref_ptr<osgViewer::View> view2 = new osgViewer::View;
	view2->setUpViewInWindow(320, 50, 320, 240);
	view2->setSceneData(osgDB::readNodeFile("cessna.osg"));

	osg::ref_ptr<osgViewer::View> view3 = new osgViewer::View;
	view3->setUpViewInWindow(640, 50, 320, 240);
	view3->setSceneData(osgDB::readNodeFile("axes.osgt"));

	osgViewer::CompositeViewer compositeViewer;
	compositeViewer.addView(view1.get());
	compositeViewer.addView(view2.get());
	compositeViewer.addView(view3.get());
	return compositeViewer.run();
}


osgViewer::CompositeViewer 多视景器类,是多个视图类的几何,派生自VieweBase基类。

addView(View* view);//增加一个视图

view1->setUpViewInWindow()//快速构建视图的窗口设备,在指定的屏幕上创建一个指定位置和尺寸的窗口。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值