VTK
vtkOutlineSource.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkOutlineSource.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 =========================================================================*/
29 #ifndef __vtkOutlineSource_h
30 #define __vtkOutlineSource_h
31 
32 #include "vtkPolyDataAlgorithm.h"
33 
34 #define VTK_BOX_TYPE_AXIS_ALIGNED 0
35 #define VTK_BOX_TYPE_ORIENTED 1
36 
38 {
39 public:
40  static vtkOutlineSource *New();
42  void PrintSelf(ostream& os, vtkIndent indent);
43 
45 
48  vtkSetMacro(BoxType,int);
49  vtkGetMacro(BoxType,int);
50  void SetBoxTypeToAxisAligned()
51  {this->SetBoxType(VTK_BOX_TYPE_AXIS_ALIGNED);}
52  void SetBoxTypeToOriented()
53  {this->SetBoxType(VTK_BOX_TYPE_ORIENTED);}
55 
57 
58  vtkSetVector6Macro(Bounds,double);
59  vtkGetVectorMacro(Bounds,double,6);
61 
63 
67  vtkSetVectorMacro(Corners,double,24);
68  vtkGetVectorMacro(Corners,double,24);
70 
72 
73  vtkSetMacro(GenerateFaces, int);
74  vtkBooleanMacro(GenerateFaces, int);
75  vtkGetMacro(GenerateFaces, int);
77 
78 protected:
81 
83  int BoxType;
85  double Bounds[6];
86  double Corners[24];
87 
88 private:
89  vtkOutlineSource(const vtkOutlineSource&); // Not implemented.
90  void operator=(const vtkOutlineSource&); // Not implemented.
91 };
92 
93 #endif