OSDN Git Service

FIRST REPOSITORY
[eos/hostdependOTHERS.git] / I386LINUX / util / I386LINUX / include / vtk / vtkImagePermute.h
1 /*=========================================================================
2
3   Program:   Visualization Toolkit
4   Module:    $RCSfile: vtkImagePermute.h,v $
5   Language:  C++
6
7   Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 
8   All rights reserved.
9   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
10
11      This software is distributed WITHOUT ANY WARRANTY; without even 
12      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
13      PURPOSE.  See the above copyright notice for more information.
14
15 =========================================================================*/
16 // .NAME vtkImagePermute -  Permutes axes of input.
17 // .SECTION Description
18 // vtkImagePermute reorders the axes of the input. Filtered axes specify
19 // the input axes which become X, Y, Z.  The input has to have the
20 // same scalar type of the output. The filter does copy the 
21 // data when it executes. This filter is actually a very thin wrapper
22 // around vtkImageReslice.
23
24 #ifndef __vtkImagePermute_h
25 #define __vtkImagePermute_h
26
27
28 #include "vtkImageReslice.h"
29
30 class VTK_IMAGING_EXPORT vtkImagePermute : public vtkImageReslice
31 {
32 public:
33   static vtkImagePermute *New();
34   vtkTypeRevisionMacro(vtkImagePermute,vtkImageReslice);
35
36   void PrintSelf(ostream& os, vtkIndent indent);
37
38   // Description:
39   // The filtered axes are the input axes that get relabeled to X,Y,Z.
40   void SetFilteredAxes(int x, int y, int z);
41   void SetFilteredAxes(const int xyz[3]) { 
42     this->SetFilteredAxes(xyz[0], xyz[1], xyz[2]); };
43   vtkGetVector3Macro(FilteredAxes, int);
44   
45 protected:
46   vtkImagePermute();
47   ~vtkImagePermute() {};
48
49   int FilteredAxes[3];
50
51 private:
52   vtkImagePermute(const vtkImagePermute&);  // Not implemented.
53   void operator=(const vtkImagePermute&);  // Not implemented.
54 };
55
56 #endif
57
58
59