⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 layers.cxx

📁 VTK入门样例(种类齐全)
💻 CXX
字号:
//#include "SaveImage.h"

#include <vtkCubeSource.h>
#include <vtkSphereSource.h>
#include <vtkPolyDataMapper.h>
#include <vtkActor.h>

#include <vtkImageGridSource.h>
#include <vtkImageActor.h>

#include <vtkRenderWindow.h>
#include <vtkRenderer.h>
#include <vtkRenderWindowInteractor.h>


int main(int argc, char *argv[])
{
  // Create a sphere to be used later.
  vtkSphereSource *sphere = vtkSphereSource::New();
  vtkPolyDataMapper *sphereMapper = vtkPolyDataMapper::New();
  sphereMapper->SetInput(sphere->GetOutput());
  vtkActor *sphereActor = vtkActor::New();
  sphereActor->SetMapper(sphereMapper);

  // Create a grid image to be used later.
  vtkImageGridSource *image      = vtkImageGridSource::New();
  vtkImageActor      *imageActor = vtkImageActor::New();
  imageActor->SetInput(image->GetOutput());

  vtkRenderWindow *renWin= vtkRenderWindow::New();
  renWin->SetNumberOfLayers(3);

  // Create the background.
  vtkRenderer *background = vtkRenderer::New();
  renWin->AddRenderer(background);
  background->SetInteractive(0);
  background->SetLayer(2);
  background->SetBackground(0., 1., 1.);
  background->AddActor2D(imageActor);
  
  // Create a middle renderer.
  vtkRenderer *ren = vtkRenderer::New();
  renWin->AddRenderer(ren);
  ren->AddActor(sphereActor);
  ren->SetLayer(1);
  ren->SetInteractive(1);
  /*
  // Create a checkerboard of foreground renderers.
  int i, j;
  int numSteps = 4;
  for (i = 0 ; i < numSteps ; i++)
    {
    for (j = 0 ; j < numSteps ; j++)
      {
      if ((i+j) % 2 == 1)
        {
        vtkRenderer *checker_square = vtkRenderer::New();
        renWin->AddRenderer(checker_square);
        checker_square->SetInteractive(0);
        checker_square->SetLayer(0);
        float x = ((float) i) / numSteps;
        float y = ((float) j) / numSteps;
        float step = 1. / numSteps;
        checker_square->SetViewport(x, y, x+step, y+step);
        checker_square->AddActor(sphereActor);
        }
      }
    }
*/
  vtkRenderWindowInteractor *iren = vtkRenderWindowInteractor::New();
  iren->SetRenderWindow(renWin);

  renWin->Render();

//  SAVEIMAGE(renWin);

  iren->Start();

  // Clean up...
  return 0;
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -