1#!/usr/bin/env python 2import vtk 3from vtk.util.misc import vtkGetDataRoot 4VTK_DATA_ROOT = vtkGetDataRoot() 5 6# 7# Test butterfly subdivision of point data 8# 9sphere = vtk.vtkSphereSource() 10sphere.SetPhiResolution(11) 11sphere.SetThetaResolution(11) 12colorIt = vtk.vtkElevationFilter() 13colorIt.SetInputConnection(sphere.GetOutputPort()) 14colorIt.SetLowPoint(0,0,-.5) 15colorIt.SetHighPoint(0,0,.5) 16butterfly = vtk.vtkButterflySubdivisionFilter() 17butterfly.SetInputConnection(colorIt.GetOutputPort()) 18butterfly.SetNumberOfSubdivisions(3) 19lut = vtk.vtkLookupTable() 20lut.SetNumberOfColors(256) 21lut.Build() 22mapper = vtk.vtkPolyDataMapper() 23mapper.SetInputConnection(butterfly.GetOutputPort()) 24mapper.SetLookupTable(lut) 25actor = vtk.vtkActor() 26actor.SetMapper(mapper) 27linear = vtk.vtkLinearSubdivisionFilter() 28linear.SetInputConnection(colorIt.GetOutputPort()) 29linear.SetNumberOfSubdivisions(3) 30mapper2 = vtk.vtkPolyDataMapper() 31mapper2.SetInputConnection(linear.GetOutputPort()) 32mapper2.SetLookupTable(lut) 33actor2 = vtk.vtkActor() 34actor2.SetMapper(mapper2) 35mapper3 = vtk.vtkPolyDataMapper() 36mapper3.SetInputConnection(colorIt.GetOutputPort()) 37mapper3.SetLookupTable(lut) 38actor3 = vtk.vtkActor() 39actor3.SetMapper(mapper3) 40ren1 = vtk.vtkRenderer() 41ren2 = vtk.vtkRenderer() 42ren3 = vtk.vtkRenderer() 43renWin = vtk.vtkRenderWindow() 44renWin.AddRenderer(ren1) 45renWin.AddRenderer(ren2) 46renWin.AddRenderer(ren3) 47iren = vtk.vtkRenderWindowInteractor() 48iren.SetRenderWindow(renWin) 49ren1.AddActor(actor) 50ren1.SetBackground(1,1,1) 51ren2.AddActor(actor2) 52ren2.SetBackground(1,1,1) 53ren3.AddActor(actor3) 54ren3.SetBackground(1,1,1) 55renWin.SetSize(600,200) 56aCamera = vtk.vtkCamera() 57aCamera.Azimuth(70) 58aLight = vtk.vtkLight() 59aLight.SetPosition(aCamera.GetPosition()) 60aLight.SetFocalPoint(aCamera.GetFocalPoint()) 61ren1.SetActiveCamera(aCamera) 62ren1.AddLight(aLight) 63ren1.ResetCamera() 64aCamera.Dolly(1.4) 65ren1.ResetCameraClippingRange() 66ren2.SetActiveCamera(aCamera) 67ren2.AddLight(aLight) 68ren3.SetActiveCamera(aCamera) 69ren3.AddLight(aLight) 70ren3.SetViewport(0,0,.33,1) 71ren2.SetViewport(.33,0,.67,1) 72ren1.SetViewport(.67,0,1,1) 73iren.Initialize() 74def flat (__vtk__temp0=0,__vtk__temp1=0): 75 actor.GetProperty().SetInterpolationToFlat() 76 actor2.GetProperty().SetInterpolationToFlat() 77 actor3.GetProperty().SetInterpolationToFlat() 78 renWin.Render() 79 80def smooth (__vtk__temp0=0,__vtk__temp1=0): 81 actor.GetProperty().SetInterpolationToGouraud() 82 actor2.GetProperty().SetInterpolationToGouraud() 83 actor3.GetProperty().SetInterpolationToGouraud() 84 renWin.Render() 85 86# --- end of script -- 87