ReadSLC
VTKExamples/Python/IO/ReadSLC
The following example demonstrates how to read a .slc file using vtkSLCReader. Author: Pavan Kumar B N Organization: Virtual Environments Lab, Chung-Ang University, Seoul, South Korea. Email Id: pavanbn8@gmail.com
Question
If you have a simple question about this example contact us at VTKExamplesProject If your question is more complex and may require extended discussion, please use the VTK Discourse Forum
Code¶
ReadSLC.py
#!/usr/bin/env python import vtk def main(): InputFilename = get_program_parameters() colors = vtk.vtkNamedColors() # vtkSLCReader to read. reader = vtk.vtkSLCReader() reader.SetFileName(InputFilename) reader.Update() # Create a mapper. mapper = vtk.vtkPolyDataMapper() mapper.SetInputConnection(reader.GetOutputPort()) # Implementing Marching Cubes Algorithm to create the surface using vtkContourFilter object. contourFilter = vtk.vtkContourFilter() contourFilter.SetInputConnection(reader.GetOutputPort()) contourFilter.SetValue(0, 72.0) outliner = vtk.vtkOutlineFilter() outliner.SetInputConnection(reader.GetOutputPort()) outliner.Update() mapper = vtk.vtkPolyDataMapper() mapper.SetInputConnection(contourFilter.GetOutputPort()) mapper.SetScalarVisibility(0) actor = vtk.vtkActor() actor.SetMapper(mapper) # Create a rendering window and renderer. renderer = vtk.vtkRenderer() renderWindow = vtk.vtkRenderWindow() renderWindow.AddRenderer(renderer) renderWindow.SetSize(500, 500) # Create a renderwindowinteractor. renderWindowInteractor = vtk.vtkRenderWindowInteractor() renderWindowInteractor.SetRenderWindow(renderWindow) # Assign actor to the renderer. renderer.AddActor(actor) renderer.SetBackground(colors.GetColor3d("lemon_chiffon")) # Pick a good view renderer.GetActiveCamera().SetPosition(-382.606608, -3.308563, 223.475751) renderer.GetActiveCamera().SetFocalPoint(77.311562, 72.821162, 100.000000) renderer.GetActiveCamera().SetViewUp(0.235483, 0.137775, 0.962063) renderer.GetActiveCamera().SetDistance(482.25171) renderer.GetActiveCamera().SetClippingRange(27.933848, 677.669341) renderWindow.Render() # Enable user interface interactor. renderWindowInteractor.Initialize() renderWindow.Render() renderWindowInteractor.Start() def get_program_parameters(): import argparse description = 'Read a .slc file.' epilogue = '''''' parser = argparse.ArgumentParser(description=description, epilog=epilogue, formatter_class=argparse.RawDescriptionHelpFormatter) parser.add_argument('filename', help='vw_knee.slc.') args = parser.parse_args() return args.filename if __name__ == '__main__': main()