VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkOutlineSource.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00029 #ifndef __vtkOutlineSource_h 00030 #define __vtkOutlineSource_h 00031 00032 #include "vtkPolyDataAlgorithm.h" 00033 00034 #define VTK_BOX_TYPE_AXIS_ALIGNED 0 00035 #define VTK_BOX_TYPE_ORIENTED 1 00036 00037 class VTK_GRAPHICS_EXPORT vtkOutlineSource : public vtkPolyDataAlgorithm 00038 { 00039 public: 00040 static vtkOutlineSource *New(); 00041 vtkTypeMacro(vtkOutlineSource,vtkPolyDataAlgorithm); 00042 void PrintSelf(ostream& os, vtkIndent indent); 00043 00045 00048 vtkSetMacro(BoxType,int); 00049 vtkGetMacro(BoxType,int); 00050 void SetBoxTypeToAxisAligned() 00051 {this->SetBoxType(VTK_BOX_TYPE_AXIS_ALIGNED);} 00052 void SetBoxTypeToOriented() 00053 {this->SetBoxType(VTK_BOX_TYPE_ORIENTED);} 00055 00057 00058 vtkSetVector6Macro(Bounds,double); 00059 vtkGetVectorMacro(Bounds,double,6); 00061 00063 00067 vtkSetVectorMacro(Corners,double,24); 00068 vtkGetVectorMacro(Corners,double,24); 00070 00072 00073 vtkSetMacro(GenerateFaces, int); 00074 vtkBooleanMacro(GenerateFaces, int); 00075 vtkGetMacro(GenerateFaces, int); 00077 00078 protected: 00079 vtkOutlineSource(); 00080 ~vtkOutlineSource() {} 00081 00082 int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *); 00083 int BoxType; 00084 int GenerateFaces; 00085 double Bounds[6]; 00086 double Corners[24]; 00087 00088 private: 00089 vtkOutlineSource(const vtkOutlineSource&); // Not implemented. 00090 void operator=(const vtkOutlineSource&); // Not implemented. 00091 }; 00092 00093 #endif