RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:8:30-17:00
你可能遇到了下面的问题
关闭右侧工具栏

新闻中心

这里有您想知道的互联网营销解决方案
如何截取VTK中window的场景

vtk的vtkRenderWindowInteractor中的Initialize函数初始化了可交互的窗口,但是实际工程中,往往需要把窗口拿出来在别的页面上显示,如存为png图片等等。具体方法可看vtkRenderWindow类介绍。
本文主要介绍如何截取当前窗口的画面。

创新互联长期为超过千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为柞水企业提供专业的网站制作、成都网站制作柞水网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。

//renWin:当前活动窗口;
//pdata:截图后返回的数据指针,RGBA,32位,存储格式为RGBARGBA....
//maxlen: 防止pdata开辟的空间不够
bool GetOutput(vtkRenderWindow *renWin,unsigned char* pdata, int maxlen)
{
    int w = renWin->GetSize()[0];
    int h = renWin->GetSize()[1];
    if (maxlen pixels = vtkSmartPointer::New();
    pixels->SetArray(pdata, w*h * 4, 1);
    renWin->GetRGBACharPixelData(0, 0, h - 1, w - 1, 1, pixels);
    return true;
}

通过上述代码可以截取所需窗口的当前场景,除此方式外,也可以存为png格式只需调用vtk的png类即可。


当前文章:如何截取VTK中window的场景
文章地址:http://sczitong.cn/article/pejjei.html