VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkLinkEdgels.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 =========================================================================*/ 00050 #ifndef vtkLinkEdgels_h 00051 #define vtkLinkEdgels_h 00052 00053 #include "vtkFiltersGeneralModule.h" // For export macro 00054 #include "vtkPolyDataAlgorithm.h" 00055 00056 class vtkCellArray; 00057 class vtkDataArray; 00058 class vtkDoubleArray; 00059 class vtkPoints; 00060 00061 class VTKFILTERSGENERAL_EXPORT vtkLinkEdgels : public vtkPolyDataAlgorithm 00062 { 00063 public: 00064 vtkTypeMacro(vtkLinkEdgels,vtkPolyDataAlgorithm); 00065 void PrintSelf(ostream& os, vtkIndent indent); 00066 00070 static vtkLinkEdgels *New(); 00071 00073 00074 vtkSetMacro(LinkThreshold,double); 00075 vtkGetMacro(LinkThreshold,double); 00077 00079 00080 vtkSetMacro(PhiThreshold,double); 00081 vtkGetMacro(PhiThreshold,double); 00083 00085 00086 vtkSetMacro(GradientThreshold,double); 00087 vtkGetMacro(GradientThreshold,double); 00089 00090 protected: 00091 vtkLinkEdgels(); 00092 ~vtkLinkEdgels() {} 00093 00094 virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *); 00095 virtual int FillInputPortInformation(int port, vtkInformation *info); 00096 00097 void LinkEdgels(int xdim, int ydim,double *image, vtkDataArray *inVectors, 00098 vtkCellArray *newLines, vtkPoints *newPts, 00099 vtkDoubleArray *outScalars, vtkDoubleArray *outVectors, 00100 int z); 00101 double GradientThreshold; 00102 double PhiThreshold; 00103 double LinkThreshold; 00104 private: 00105 vtkLinkEdgels(const vtkLinkEdgels&); // Not implemented. 00106 void operator=(const vtkLinkEdgels&); // Not implemented. 00107 }; 00108 00109 #endif