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 "vtkPolyDataAlgorithm.h" 00054 00055 class vtkCellArray; 00056 class vtkDataArray; 00057 class vtkDoubleArray; 00058 class vtkPoints; 00059 00060 class VTK_GRAPHICS_EXPORT vtkLinkEdgels : public vtkPolyDataAlgorithm 00061 { 00062 public: 00063 vtkTypeMacro(vtkLinkEdgels,vtkPolyDataAlgorithm); 00064 void PrintSelf(ostream& os, vtkIndent indent); 00065 00069 static vtkLinkEdgels *New(); 00070 00072 00073 vtkSetMacro(LinkThreshold,double); 00074 vtkGetMacro(LinkThreshold,double); 00076 00078 00079 vtkSetMacro(PhiThreshold,double); 00080 vtkGetMacro(PhiThreshold,double); 00082 00084 00085 vtkSetMacro(GradientThreshold,double); 00086 vtkGetMacro(GradientThreshold,double); 00088 00089 protected: 00090 vtkLinkEdgels(); 00091 ~vtkLinkEdgels() {}; 00092 00093 virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *); 00094 virtual int FillInputPortInformation(int port, vtkInformation *info); 00095 00096 void LinkEdgels(int xdim, int ydim,double *image, vtkDataArray *inVectors, 00097 vtkCellArray *newLines, vtkPoints *newPts, 00098 vtkDoubleArray *outScalars, vtkDoubleArray *outVectors, 00099 int z); 00100 double GradientThreshold; 00101 double PhiThreshold; 00102 double LinkThreshold; 00103 private: 00104 vtkLinkEdgels(const vtkLinkEdgels&); // Not implemented. 00105 void operator=(const vtkLinkEdgels&); // Not implemented. 00106 }; 00107 00108 #endif