1 #include "vtkAutoInit.h"
2 VTK_MODULE_INIT(vtkRenderingOpenGL2);
3 VTK_MODULE_INIT(vtkInteractionStyle);
4
5 #include <vtkSmartPointer.h>
6 #include <vtkImageData.h>
7 #include <vtkImageConvolve.h>
8 #include <vtkImageMandelbrotSource.h>
9 #include <vtkRenderWindoh>
10 #include <vtkRenderWindowInteractor.h>
11 #include <vtkInteractorStyleImage.h>
12 #include <vtkRenderer.h>
13 #include <vtkImageActor.h>
14 #include <vtkImageCast.h>
15 #include <vtkJPEGReader.h>
16 #include <vtkImageShiftScale.h>
17
18 //测试图像:../data/lenagray.jpg
19 int main(int argc, char* argv[])
20 ;
41 convolveFilter>SetKernel5x5(kernel);
42 convolveFilter>Update();
43
44 vtkSmartPointer<vtkImageCast> convCastFilter =
45 vtkSmartPointer<vtkImageCast>::New();
46 convCastFilter>SetInputData(convolveFilter>GetOutput());
47 convCastFilter>SetOutputScalarTypeToUnsignedChar();
48 convCastFilter>Update();
49
50 vtkSmartPointer<vtkImageActor> originalActor =
51 vtkSmartPointer<vtkImageActor>::New();
52 originalActor>SetInputData(reader>GetOutput());
53
54 vtkSmartPointer<vtkImageActor> convolvedActor =
55 vtkSmartPointer<vtkImageActor>::New();
56 convolvedActor>SetInputData(convCastFilter>GetOutput());
57
58 double leftViewport[4] = ;
59 double rightViewport[4] = ;
60
61 vtkSmartPointer<vtkRenderer> originalRenderer =
62 vtkSmartPointer<vtkRenderer>::New();
originalRenderer>SetViewport(leftViewport);
64 originalRenderer>AddActor(originalActor);
65 originalRenderer>SetBackground(1.0, 1.0, 1.0);
66 originalRenderer>ResetCamera();
67
68 vtkSmartPointer<vtkRenderer> convolvedRenderer =
69 vtkSmartPointer<vtkRenderer>::New();
70 convolvedRenderer>SetViewport(rightViewport);
71 convolvedRenderer>AddActor(convolvedActor);
72 convolvedRenderer>SetBackground(1.0, 1.0, 1.0);
73 convolvedRenderer>ResetCamera();
74
75 vtkSmartPointer<vtkRenderWindow> renderWindow =
76 vtkSmartPointer<vtkRenderWindow>::New();;
77 renderWindow>AddRenderer(originalRenderer);
78 renderWindow>AddRenderer(convolvedRenderer);
79 renderWindow>SetSize(640, 320);
80 renderWindow>Render();
81 renderWindow>SetWindowName("MeanFilterExample");
82
83 vtkSmartPointer<vtkRenderWindowInteractor> renderWindowInteractor =
84 vtkSmartPointer<vtkRenderWindowInteractor>::New();
85 vtkSmartPointer<vtkInteractorStyleImage> style =
86 vtkSmartPointer<vtkInteractorStyleImage>::New();
87
88 renderWindowInteractor>SetInteractorStyle(style);
89 renderWindowInteractor>SetRenderWindow(renderWindow);
90 renderWindowInteractor>Initialize();
91 renderWindowInteractor>Start();
92
93 return EXIT_SUCCESS;
94 }
上一篇:VTK 实例49:计算三角网络模型面积、体积
下一篇:VTK 实例50:计算三角网络模型的测地距离
VTK









