00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00026
#ifndef __vtkOutlineSource_h
00027
#define __vtkOutlineSource_h
00028
00029
#include "vtkPolyDataSource.h"
00030
00031 #define VTK_BOX_TYPE_AXIS_ALIGNED 0
00032 #define VTK_BOX_TYPE_ORIENTED 1
00033
00034 class VTK_GRAPHICS_EXPORT vtkOutlineSource :
public vtkPolyDataSource
00035 {
00036
public:
00037
static vtkOutlineSource *
New();
00038 vtkTypeRevisionMacro(vtkOutlineSource,
vtkPolyDataSource);
00039
void PrintSelf(ostream& os,
vtkIndent indent);
00040
00042
00045 vtkSetMacro(BoxType,
int);
00046 vtkGetMacro(BoxType,
int);
00047 void SetBoxTypeToAxisAligned()
00048 {this->SetBoxType(
VTK_BOX_TYPE_AXIS_ALIGNED);}
00049 void SetBoxTypeToOriented()
00050 {this->SetBoxType(
VTK_BOX_TYPE_ORIENTED);}
00052
00054
00055 vtkSetVector6Macro(Bounds,
double);
00056 vtkGetVectorMacro(Bounds,
double,6);
00058
00060
00064 vtkSetVectorMacro(Corners,
double,24);
00065 vtkGetVectorMacro(Corners,
double,24);
00067
00068
protected:
00069 vtkOutlineSource();
00070 ~vtkOutlineSource() {}
00071
00072
void Execute();
00073 int BoxType;
00074 double Bounds[6];
00075 double Corners[24];
00076
00077
private:
00078 vtkOutlineSource(
const vtkOutlineSource&);
00079
void operator=(
const vtkOutlineSource&);
00080 };
00081
00082
#endif
00083
00084