查看: 2119|回复: 7

求解答 如何隐去显示窗口

[复制链接]

该用户从未签到

发表于 2011-8-18 14:44:14 | 显示全部楼层 |阅读模式
在执行
viwer.realise();
viwer.frame();
后 一般都会弹出窗口用来显示绘制的帧。如果要隐藏这个窗口 但仍然完成绘制  该如何操作》?(即把窗口弄为后台不显示出来)

该用户从未签到

发表于 2011-8-19 08:50:12 | 显示全部楼层
您可以参考osgautocapture和osgposter例子,其中提供了一种不打开窗口但是完成截图工作的方法

该用户从未签到

 楼主| 发表于 2011-8-24 20:11:03 | 显示全部楼层
但是我看了下  那个autocapture里面也有 viewer.realise()和viewer.frame()啊  不会弹出相应的窗口么
还有就是没有找到osgposter例  求指导

该用户从未签到

 楼主| 发表于 2011-8-24 20:15:40 | 显示全部楼层
或者 直接教我下如何获得 这个弹出窗口的句柄吧  我想在生成后自动把它消掉  不知道可不可行

该用户从未签到

 楼主| 发表于 2011-8-24 20:17:03 | 显示全部楼层
回复 2# array


    但是我看了下  那个autocapture里面也有 viewer.realise()和viewer.frame()啊  不会弹出相应的窗口么
还有就是没有找到osgposter例  求指导

或者教我下如何获得该弹出窗口的句柄吧  我想在它弹出来运行几帧后自己把它消掉 不知道可不可行?

该用户从未签到

发表于 2011-8-25 08:36:32 | 显示全部楼层
您没有仔细看过例子吧,osgautocapture提供了两种不同的实现,在线的和离线的
osgposter在OSG 3.0中提供
获取窗口句柄的话,将getGraphicsContext()转换为GraphicsWindowWin32然后得到HWND

该用户从未签到

 楼主| 发表于 2011-8-25 16:31:49 | 显示全部楼层
回复 6# array


    看了  它2种情况都会出现窗口啊  一种是activemode=true   另一种是activemode=faulse
你说的在线和离线是不是就是这两种方式?而且我也运行了一下。不过是嵌入在osgOcean里面运行,删除了一些比如读取模型、设置相机之类的代码。

    我在想如要不出现窗口 viewer.frame() 语句是不能存在的   但没有语句似乎又无法完成渲染和截图。

   希望能有更进一步的解答和帮助。多谢了!

该用户从未签到

发表于 2011-8-29 08:36:13 | 显示全部楼层
您依然没有认真地阅读代码和运行例子,并且还莫名其妙地提到了osgocean,这样的话我也提供不了什么更深一步的信息了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表