public static void OutputImageFromCurrentSence(vtk.vtkRenderWindow renderWin, string outputPath) { // Create a window to image filter using (vtk.vtkWindowToImageFilter filterImage = new vtk.vtkWindowToImageFilter()) { filterImage.SetInput(renderWin); // PNG Writer using (vtk.vtkPNGWriter pngWriter = new vtk.vtkPNGWriter()) { pngWriter.SetFileName(outputPath); pngWriter.SetInput(filterImage.GetOutput()); pngWriter.Write(); } } }
public void EndRecord() { if (!IsRecording) return; // End the process. m_aviWriter.End(); // Clear the memory m_WindowToImageFilter.Dispose(); m_WindowToImageFilter = null; m_aviWriter.Dispose(); m_aviWriter = null; FilePath = null; }
public void StartRecord() { // If already started, return directly. if (IsRecording) return; // Check the file path if (string.IsNullOrEmpty(FilePath)) throw new ArgumentNullException(/*MSG0*/"FilePath is not set!"); // Initialize the window to image filter and AVI writer m_WindowToImageFilter = new vtk.vtkWindowToImageFilter(); m_WindowToImageFilter.SetInput(IApp.theApp.RenderWindow); m_aviWriter = new vtk.vtkAVIWriter(); m_aviWriter.SetInputConnection(m_WindowToImageFilter.GetOutputPort()); m_aviWriter.SetFileName(FilePath); // Start record m_aviWriter.Start(); }