Screenshot
VTKExamples/Java/Miscellaneous/Screenshot
Description¶
This example shows how to save the window to a file (png in this case).
Code¶
Screenshot.java
import vtk.*; public class Screenshot { static { System.loadLibrary("vtkCommonJava"); System.loadLibrary("vtkFilteringJava"); System.loadLibrary("vtkIOJava"); System.loadLibrary("vtkImagingJava"); System.loadLibrary("vtkGraphicsJava"); System.loadLibrary("vtkRenderingJava"); } public static void main(String[] args) { vtkSphereSource sphereSource = new vtkSphereSource(); sphereSource.SetCenter(0.0, 0.0, 0.0); sphereSource.SetRadius(5.0); //create a mapper vtkPolyDataMapper mapper = new vtkPolyDataMapper(); mapper.SetInputConnection(sphereSource.GetOutputPort()); // create an actor vtkActor actor = new vtkActor(); actor.SetMapper(mapper); // a renderer and render window vtkRenderer renderer = new vtkRenderer(); vtkRenderWindow renderWindow = new vtkRenderWindow(); renderWindow.AddRenderer(renderer); // an interactor vtkRenderWindowInteractor renderWindowInteractor = new vtkRenderWindowInteractor(); renderWindowInteractor.SetRenderWindow(renderWindow); // add the actors to the scene renderer.AddActor(actor); renderer.SetBackground(1,1,1); // Background color white renderWindow.Render(); vtkWindowToImageFilter windowToImageFilter = new vtkWindowToImageFilter(); windowToImageFilter.SetInput(renderWindow); windowToImageFilter.SetMagnification(3); //set the resolution of the output image windowToImageFilter.Update(); vtkPNGWriter writer = new vtkPNGWriter(); writer.SetFileName("screenshot2.png"); writer.SetInput(windowToImageFilter.GetOutput()); writer.Write(); renderWindow.Render(); renderer.ResetCamera(); renderWindow.Render(); renderWindowInteractor.Start(); } }