VTK
vtkVoxelModeller.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkVoxelModeller.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
33 #ifndef __vtkVoxelModeller_h
34 #define __vtkVoxelModeller_h
35 
36 #include "vtkImageAlgorithm.h"
37 
39 {
40 public:
42  void PrintSelf(ostream& os, vtkIndent indent);
43 
49  static vtkVoxelModeller *New();
50 
52  double ComputeModelBounds(double origin[3], double ar[3]);
53 
55 
57  void SetSampleDimensions(int i, int j, int k);
58  void SetSampleDimensions(int dim[3]);
59  vtkGetVectorMacro(SampleDimensions,int,3);
61 
63 
65  vtkSetClampMacro(MaximumDistance,double,0.0,1.0);
66  vtkGetMacro(MaximumDistance,double);
68 
70 
72  void SetModelBounds(double bounds[6]);
73  void SetModelBounds(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax);
74  vtkGetVectorMacro(ModelBounds,double,6);
76 
78 
81  vtkSetMacro(ScalarType,int);
82  void SetScalarTypeToFloat(){this->SetScalarType(VTK_FLOAT);};
83  void SetScalarTypeToDouble(){this->SetScalarType(VTK_DOUBLE);};
84  void SetScalarTypeToInt(){this->SetScalarType(VTK_INT);};
86  {this->SetScalarType(VTK_UNSIGNED_INT);};
87  void SetScalarTypeToLong(){this->SetScalarType(VTK_LONG);};
89  {this->SetScalarType(VTK_UNSIGNED_LONG);};
90  void SetScalarTypeToShort(){this->SetScalarType(VTK_SHORT);};
92  {this->SetScalarType(VTK_UNSIGNED_SHORT);};
94  {this->SetScalarType(VTK_UNSIGNED_CHAR);};
96  {this->SetScalarType(VTK_CHAR);};
98  {this->SetScalarType(VTK_BIT);};
99  vtkGetMacro(ScalarType,int);
101 
103 
107  vtkSetMacro(ForegroundValue, double);
108  vtkGetMacro(ForegroundValue, double);
109  vtkSetMacro(BackgroundValue, double);
110  vtkGetMacro(BackgroundValue, double);
111 protected:
115 
116  virtual int RequestInformation (vtkInformation *,
119 
120  // see vtkAlgorithm for details
121  virtual int RequestData(vtkInformation *request,
122  vtkInformationVector** inputVector,
123  vtkInformationVector* outputVector);
124 
125  // see algorithm for more info
127 
128  int SampleDimensions[3];
130  double ModelBounds[6];
134 
135 private:
136  vtkVoxelModeller(const vtkVoxelModeller&); // Not implemented.
137  void operator=(const vtkVoxelModeller&); // Not implemented.
138 };
139 
140 #endif