VTK  9.1.0
vtkLinkEdgels.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkLinkEdgels.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13
14=========================================================================*/
67#ifndef vtkLinkEdgels_h
68#define vtkLinkEdgels_h
69
70#include "vtkFiltersGeneralModule.h" // For export macro
72
73class vtkCellArray;
74class vtkDataArray;
75class vtkDoubleArray;
76class vtkPoints;
77
78class VTKFILTERSGENERAL_EXPORT vtkLinkEdgels : public vtkPolyDataAlgorithm
79{
80public:
82 void PrintSelf(ostream& os, vtkIndent indent) override;
83
88 static vtkLinkEdgels* New();
89
91
94 vtkSetMacro(LinkThreshold, double);
95 vtkGetMacro(LinkThreshold, double);
97
99
102 vtkSetMacro(PhiThreshold, double);
103 vtkGetMacro(PhiThreshold, double);
105
107
110 vtkSetMacro(GradientThreshold, double);
111 vtkGetMacro(GradientThreshold, double);
113
114protected:
116 ~vtkLinkEdgels() override = default;
117
119 int FillInputPortInformation(int port, vtkInformation* info) override;
120
121 void LinkEdgels(int xdim, int ydim, double* image, vtkDataArray* inVectors,
122 vtkCellArray* newLines, vtkPoints* newPts, vtkDoubleArray* outScalars,
123 vtkDoubleArray* outVectors, int z);
127
128private:
129 vtkLinkEdgels(const vtkLinkEdgels&) = delete;
130 void operator=(const vtkLinkEdgels&) = delete;
131};
132
133#endif
object to represent cell connectivity
Definition: vtkCellArray.h:290
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:159
dynamic, self-adjusting array of double
a simple class to control print indentation
Definition: vtkIndent.h:113
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
links edgels together to form digital curves.
Definition: vtkLinkEdgels.h:79
static vtkLinkEdgels * New()
Construct instance of vtkLinkEdgels with GradientThreshold set to 0.1, PhiThreshold set to 90 degrees...
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void LinkEdgels(int xdim, int ydim, double *image, vtkDataArray *inVectors, vtkCellArray *newLines, vtkPoints *newPts, vtkDoubleArray *outScalars, vtkDoubleArray *outVectors, int z)
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
double PhiThreshold
double GradientThreshold
double LinkThreshold
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
~vtkLinkEdgels() override=default
represent and manipulate 3D points
Definition: vtkPoints.h:143
Superclass for algorithms that produce only polydata as output.