[SciPy-User] VTK examples
alexander baker
baker.alexander at gmail.com
Tue Feb 16 08:25:21 EST 2010
Works fine for me! (XP)
from vtk import *
2
3 import matplotlib
4 matplotlib.use('Agg')
5 from matplotlib.figure import Figure
6 from matplotlib.backends.backend_agg import FigureCanvasAgg
7 import pylab as p
8
9 # The vtkImageImporter will treat a python string as a void pointer
10 importer = vtkImageImport()
11 importer.SetDataScalarTypeToUnsignedChar()
12 importer.SetNumberOfScalarComponents(4)
13
14 # It's upside-down when loaded, so add a flip filter
15 imflip = vtkImageFlip()
16 imflip.SetInput(importer.GetOutput())
17 imflip.SetFilteredAxis(1)
18
19 # Map the plot as a texture on a cube
20 cube = vtkCubeSource()
21
22 cubeMapper = vtkPolyDataMapper()
23 cubeMapper.SetInput(cube.GetOutput())
24
25 cubeActor = vtkActor()
26 cubeActor.SetMapper(cubeMapper)
27
28 # Create a texture based off of the image
29 cubeTexture = vtkTexture()
30 cubeTexture.InterpolateOn()
31 cubeTexture.SetInput(imflip.GetOutput())
32 cubeActor.SetTexture(cubeTexture)
33
34 ren = vtkRenderer()
35 ren.AddActor(cubeActor)
36
37 renWin = vtkRenderWindow()
38 renWin.AddRenderer(ren)
39
40 iren = vtkRenderWindowInteractor()
41 iren.SetRenderWindow(renWin)
42
43 # Now create our plot
44 fig = Figure()
45 canvas = FigureCanvasAgg(fig)
46 ax = fig.add_subplot(111)
47 ax.grid(True)
48 ax.set_xlabel('Hello from VTK!', size=16)
49 ax.bar(xrange(10), p.rand(10))
50
51 # Powers of 2 image to be clean
52 w,h = 1024, 1024
53 dpi = canvas.figure.get_dpi()
54 fig.set_figsize_inches(w / dpi, h / dpi)
55 canvas.draw() # force a draw
56
57 # This is where we tell the image importer about the mpl image
58 extent = (0, w - 1, 0, h - 1, 0, 0)
59 importer.SetWholeExtent(extent)
60 importer.SetDataExtent(extent)
61 importer.SetImportVoidPointer(canvas.buffer_rgba(0,0), 1)
62 importer.Update()
63
64 iren.Initialize()
65 iren.Start()
Mobile: 07788 872118
Blog: www.alexfb.com
--
All science is either physics or stamp collecting.
On 16 February 2010 13:10, URI <zallen at urologicresearchinstitute.org> wrote:
> Can anyone get the example on this page to work?
>
> http://www.scipy.org/Cookbook/Matplotlib/VTK_Integration
>
> When I run it (in Windows 7) a window opens up but then I get a "Python has
> stopped working" dialoge.
>
> It seems to have a problem with the second to last line:
> iren.Initialize()
>
> _______________________________________________
> SciPy-User mailing list
> SciPy-User at scipy.org
> http://mail.scipy.org/mailman/listinfo/scipy-user
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.scipy.org/pipermail/scipy-user/attachments/20100216/89a6e171/attachment.html>
More information about the SciPy-User
mailing list