VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkLineSource.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 =========================================================================*/ 00033 #ifndef __vtkLineSource_h 00034 #define __vtkLineSource_h 00035 00036 #include "vtkFiltersSourcesModule.h" // For export macro 00037 #include "vtkPolyDataAlgorithm.h" 00038 00039 class vtkPoints; 00040 00041 class VTKFILTERSSOURCES_EXPORT vtkLineSource : public vtkPolyDataAlgorithm 00042 { 00043 public: 00044 static vtkLineSource *New(); 00045 vtkTypeMacro(vtkLineSource,vtkPolyDataAlgorithm); 00046 void PrintSelf(ostream& os, vtkIndent indent); 00047 00049 00050 vtkSetVector3Macro(Point1,double); 00051 vtkGetVectorMacro(Point1,double,3); 00052 void SetPoint1(float[3]); 00054 00056 00057 vtkSetVector3Macro(Point2,double); 00058 vtkGetVectorMacro(Point2,double,3); 00059 void SetPoint2(float[3]); 00061 00063 00064 virtual void SetPoints(vtkPoints*); 00065 vtkGetObjectMacro(Points,vtkPoints); 00067 00069 00070 vtkSetClampMacro(Resolution,int,1,VTK_INT_MAX); 00071 vtkGetMacro(Resolution,int); 00073 00075 00079 vtkSetMacro(OutputPointsPrecision,int); 00080 vtkGetMacro(OutputPointsPrecision,int); 00082 00083 protected: 00084 vtkLineSource(int res=1); 00085 virtual ~vtkLineSource(); 00086 00087 int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *); 00088 int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *); 00089 double Point1[3]; 00090 double Point2[3]; 00091 int Resolution; 00092 int OutputPointsPrecision; 00093 00096 vtkPoints* Points; 00097 00098 private: 00099 vtkLineSource(const vtkLineSource&); // Not implemented. 00100 void operator=(const vtkLineSource&); // Not implemented. 00101 }; 00102 00103 #endif