File: ReslicePermuteResample.tcl

package info (click to toggle)
vtk 5.0.2-4
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 51,080 kB
  • ctags: 67,442
  • sloc: cpp: 522,627; ansic: 221,292; tcl: 43,377; python: 14,072; perl: 3,102; java: 1,436; yacc: 1,033; sh: 469; lex: 248; makefile: 181; asm: 154
file content (37 lines) | stat: -rw-r--r-- 986 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package require vtk

# This example demonstrates how to permute an image with vtkImageReslice.
# The advantage of using vtkImageReslice for this (rather than
# vtkImagePermute) is that you can specify negative or even oblique axes,
# and you can resample the image at the same time.

vtkImageReader reader
reader ReleaseDataFlagOff
reader SetDataByteOrderToLittleEndian
reader SetDataExtent 0 63 0 63 1 93
reader SetDataSpacing 3.2 3.2 1.5
reader SetFilePrefix "$VTK_DATA_ROOT/Data/headsq/quarter"
reader SetDataMask 0x7fff

vtkImageReslice reslice
reslice SetInputConnection [reader GetOutputPort]
# specify the new axes in terms of the original axes
reslice SetResliceAxesDirectionCosines  0 +1 0   0 0 -1   -1 0 0    
# resample the image to enlarge & to get the aspect right
reslice SetOutputSpacing 1.0 1.0 1.0

vtkImageViewer viewer
viewer SetInputConnection [reslice GetOutputPort]
viewer SetZSlice 100
viewer SetColorWindow 2000
viewer SetColorLevel 1000
viewer Render