11#include < vtkSmartPointer.h>
22#include < vtkVectorText.h>
3- #include < vtkPolyDataMapper.h>
4- #include < vtkActor.h>
53#include < vtkLinearExtrusionFilter.h>
6- #include < vtkXMLPolyDataWriter.h>
74#include < vtkTriangleFilter.h>
85
6+ #include < vtkDataSetMapper.h>
7+ #include < vtkActor.h>
8+ #include < vtkProperty.h>
9+ #include < vtkCamera.h>
10+ #include < vtkRenderWindow.h>
11+ #include < vtkRenderer.h>
12+ #include < vtkRenderWindowInteractor.h>
13+
914int main (int , char *[])
1015{
1116 // Create vector text
1217 vtkSmartPointer<vtkVectorText> vecText =
1318 vtkSmartPointer<vtkVectorText>::New ();
1419 vecText->SetText (" Text!" );
15- vecText->Update ();
1620
1721 // Apply linear extrusion
1822 vtkSmartPointer<vtkLinearExtrusionFilter> extrude =
@@ -21,20 +25,44 @@ int main(int, char *[])
2125 extrude->SetExtrusionTypeToNormalExtrusion ();
2226 extrude->SetVector (0 , 0 , 1 );
2327 extrude->SetScaleFactor (0.5 );
24- extrude->Update ();
2528
2629 vtkSmartPointer<vtkTriangleFilter> triangleFilter =
2730 vtkSmartPointer<vtkTriangleFilter>::New ();
2831 triangleFilter->SetInputConnection (extrude->GetOutputPort ());
29- triangleFilter->Update ();
3032
31- // write an STL file
32- std::string outputFilename = " extruded.vtp" ;
33- vtkSmartPointer<vtkXMLPolyDataWriter> writer =
34- vtkSmartPointer<vtkXMLPolyDataWriter>::New ();
35- writer->SetFileName (outputFilename.c_str ());
36- writer->SetInputConnection (triangleFilter->GetOutputPort ());
37- writer->Write ();
33+ vtkSmartPointer<vtkDataSetMapper> mapper =
34+ vtkSmartPointer<vtkDataSetMapper>::New ();
35+ mapper->SetInputConnection (triangleFilter->GetOutputPort ());
36+
37+ vtkSmartPointer<vtkActor> actor =
38+ vtkSmartPointer<vtkActor>::New ();
39+ actor->SetMapper (mapper);
40+ actor->GetProperty ()->SetColor (0.8900 , 0.8100 , 0.3400 );
41+
42+ vtkSmartPointer<vtkRenderWindow> renderWindow =
43+ vtkSmartPointer<vtkRenderWindow>::New ();
44+
45+ vtkSmartPointer<vtkRenderer> renderer =
46+ vtkSmartPointer<vtkRenderer>::New ();
47+ renderer->SetBackground (.4 , .5 , .7 );
48+
49+ renderWindow->AddRenderer (renderer);
50+
51+ renderer->AddActor (actor);
52+
53+ renderer->ResetCamera ();
54+ // Generate an interesting view
55+ renderer->ResetCamera ();
56+ renderer->GetActiveCamera ()->Azimuth (30 );
57+ renderer->GetActiveCamera ()->Elevation (30 );
58+ renderer->GetActiveCamera ()->Dolly (1.0 );
59+ renderer->ResetCameraClippingRange ();
60+
61+ vtkSmartPointer<vtkRenderWindowInteractor> renderWindowInteractor =
62+ vtkSmartPointer<vtkRenderWindowInteractor>::New ();
63+ renderWindowInteractor->SetRenderWindow (renderWindow);
64+ renderWindow->Render ();
65+ renderWindowInteractor->Start ();
3866
3967 return EXIT_SUCCESS;
4068}
0 commit comments