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 00074 protected: 00075 vtkLineSource(int res=1); 00076 virtual ~vtkLineSource(); 00077 00078 int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *); 00079 int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *); 00080 double Point1[3]; 00081 double Point2[3]; 00082 int Resolution; 00083 00086 vtkPoints* Points; 00087 00088 private: 00089 vtkLineSource(const vtkLineSource&); // Not implemented. 00090 void operator=(const vtkLineSource&); // Not implemented. 00091 }; 00092 00093 #endif