VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkArcSource.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 =========================================================================*/ 00023 #ifndef __vtkArcSource_h 00024 #define __vtkArcSource_h 00025 00026 #include "vtkPolyDataAlgorithm.h" 00027 00028 class VTK_GRAPHICS_EXPORT vtkArcSource : public vtkPolyDataAlgorithm 00029 { 00030 public: 00031 static vtkArcSource *New(); 00032 vtkTypeMacro(vtkArcSource,vtkPolyDataAlgorithm); 00033 void PrintSelf(ostream& os, vtkIndent indent); 00034 00036 00037 vtkSetVector3Macro(Point1,double); 00038 vtkGetVectorMacro(Point1,double,3); 00040 00042 00043 vtkSetVector3Macro(Point2,double); 00044 vtkGetVectorMacro(Point2,double,3); 00046 00048 00051 vtkSetVector3Macro(Center,double); 00052 vtkGetVectorMacro(Center,double,3); 00054 00056 00058 vtkSetClampMacro(Resolution,int,1,VTK_LARGE_INTEGER); 00059 vtkGetMacro(Resolution,int); 00061 00063 00065 vtkSetMacro(Negative, bool); 00066 vtkGetMacro(Negative, bool); 00067 vtkBooleanMacro(Negative, bool); 00069 00070 protected: 00071 vtkArcSource(int res=1); 00072 ~vtkArcSource() {}; 00073 00074 int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *); 00075 int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *); 00076 double Point1[3]; 00077 double Point2[3]; 00078 double Center[3]; 00079 int Resolution; 00080 bool Negative; 00081 00082 private: 00083 vtkArcSource(const vtkArcSource&); // Not implemented. 00084 void operator=(const vtkArcSource&); // Not implemented. 00085 }; 00086 00087 #endif 00088