1#!/usr/bin/env python
2import vtk
3from vtk.test import Testing
4from vtk.util.misc import vtkGetDataRoot
5VTK_DATA_ROOT = vtkGetDataRoot()
6
7# read the football dataset:
8#
9reader = vtk.vtkUnstructuredGridReader()
10reader.SetFileName("" + str(VTK_DATA_ROOT) + "/Data/PentaHexa.vtk")
11reader.Update()
12# Clip
13#
14plane = vtk.vtkPlane()
15plane.SetNormal(1,1,0)
16clip = vtk.vtkClipDataSet()
17clip.SetInputConnection(reader.GetOutputPort())
18clip.SetClipFunction(plane)
19clip.GenerateClipScalarsOn()
20g = vtk.vtkDataSetSurfaceFilter()
21g.SetInputConnection(clip.GetOutputPort())
22map = vtk.vtkPolyDataMapper()
23map.SetInputConnection(g.GetOutputPort())
24clipActor = vtk.vtkActor()
25clipActor.SetMapper(map)
26# Contour
27#
28contour = vtk.vtkContourFilter()
29contour.SetInputConnection(reader.GetOutputPort())
30contour.SetValue(0,0.125)
31contour.SetValue(1,0.25)
32contour.SetValue(2,0.5)
33contour.SetValue(3,0.75)
34contour.SetValue(4,1.0)
35g2 = vtk.vtkDataSetSurfaceFilter()
36g2.SetInputConnection(contour.GetOutputPort())
37map2 = vtk.vtkPolyDataMapper()
38map2.SetInputConnection(g2.GetOutputPort())
39map2.ScalarVisibilityOff()
40contourActor = vtk.vtkActor()
41contourActor.SetMapper(map2)
42contourActor.GetProperty().SetColor(1,0,0)
43contourActor.GetProperty().SetRepresentationToWireframe()
44# Triangulate
45tris = vtk.vtkDataSetTriangleFilter()
46tris.SetInputConnection(reader.GetOutputPort())
47shrink = vtk.vtkShrinkFilter()
48shrink.SetInputConnection(tris.GetOutputPort())
49shrink.SetShrinkFactor(.8)
50map3 = vtk.vtkDataSetMapper()
51map3.SetInputConnection(shrink.GetOutputPort())
52map3.SetScalarRange(0,26)
53triActor = vtk.vtkActor()
54triActor.SetMapper(map3)
55triActor.AddPosition(2,0,0)
56# Create graphics stuff
57#
58ren1 = vtk.vtkRenderer()
59renWin = vtk.vtkRenderWindow()
60renWin.SetMultiSamples(0)
61renWin.AddRenderer(ren1)
62iren = vtk.vtkRenderWindowInteractor()
63iren.SetRenderWindow(renWin)
64# Add the actors to the renderer, set the background and size
65#
66ren1.AddActor(clipActor)
67ren1.AddActor(contourActor)
68ren1.AddActor(triActor)
69ren1.SetBackground(1,1,1)
70renWin.Render()
71# render the image
72#
73iren.Initialize()
74renWin.Render()
75# prevent the tk window from showing up then start the event loop
76# --- end of script --
77