zoukankan      html  css  js  c++  java
  • 用VTK打印输入jpg文件

    对于图形的输入最重要的是,要了解要输出的图形的格式,而基础的方法是一样的,

    在本博客的vc++分类里面已经有了位图的输出方式,本文再提供一个用vtk输入jpg图片的c++类

    #include "vtkRenderWindow.h"
    #include "vtkWindowToImageFilter.h"
    #include "vtkBMPWriter.h"
    class CPutOutImage 
    {
    public:
     CPutOutImage();
     virtual ~CPutOutImage();
    public:
     void SetFile(CString str);
     void PutOutImage(vtkRenderWindow* pRenderWindow);
    public:
     CString m_str;

    //vtkRenderWindow* pRenderWindow;//输入
    vtkWindowToImageFilter* pWindowToImageFilter;
    vtkBMPWriter* pBMPWriter;

    };

    CPutOutImage::CPutOutImage()
    {
       pWindowToImageFilter = vtkWindowToImageFilter::New();
       pBMPWriter = vtkBMPWriter::New();
    }

    CPutOutImage::~CPutOutImage()
    {
       pWindowToImageFilter->Delete();
       pBMPWriter->Delete();
    }

    void CPutOutImage::SetFile(CString str)
    {
     m_str = str;
    }

    void CPutOutImage::PutOutImage(vtkRenderWindow* pRenderWindow)
    {


         pWindowToImageFilter->SetInput(pRenderWindow);

         pWindowToImageFilter->Update();

       

         pBMPWriter->SetInputConnection(pWindowToImageFilter->GetOutputPort());

         pBMPWriter->SetFileName(m_str);

         pRenderWindow->Render();

         pWindowToImageFilter->Modified();

         pBMPWriter->Write();

    }

    使用方法,响应按钮消息,输入render及打印图片的输入路径即可


        if (!m_ImagePath)
        {
      AfxMessageBox("请输入路径");
        }
     m_GetPath.GetWindowText(m_ImagePath);
     m_mange.PutoutImage(m_ImagePath);


  • 相关阅读:
    WeX5开发指南
    移动web app开发框架
    [转]10款 Web 开发常备工具
    为兴趣求职:如何学习UI框架,请将你的看法观点写在评论下面
    10 个顶尖的 Linux 开源人工智能工具
    【转】编写Chrome扩展程序
    HDOJ 4455 Substrings 递推+树状数组
    iOS开发人员:事实上你还有非常多东西须要学
    鸡肋的JdbcRDD
    OFbiz实体引擎
  • 原文地址:https://www.cnblogs.com/lizhengjin/p/1269665.html
Copyright © 2011-2022 走看看