VTK
vtkSubPixelPositionEdgels.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkSubPixelPositionEdgels.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 =========================================================================*/
40 #ifndef vtkSubPixelPositionEdgels_h
41 #define vtkSubPixelPositionEdgels_h
42 
43 #include "vtkFiltersGeneralModule.h" // For export macro
44 #include "vtkPolyDataAlgorithm.h"
45 
47 class vtkDataArray;
48 
49 class VTKFILTERSGENERAL_EXPORT vtkSubPixelPositionEdgels : public vtkPolyDataAlgorithm
50 {
51 public:
54  void PrintSelf(ostream& os, vtkIndent indent) override;
55 
57 
60  void SetGradMapsData(vtkStructuredPoints *gm);
61  vtkStructuredPoints *GetGradMaps();
63 
65 
69  vtkSetMacro(TargetFlag, int);
70  vtkGetMacro(TargetFlag, int);
71  vtkBooleanMacro(TargetFlag, int);
72  vtkSetMacro(TargetValue, double);
73  vtkGetMacro(TargetValue, double);
75 
76 protected:
78  ~vtkSubPixelPositionEdgels() override;
79 
80  // Usual data generation method
83 
84  void Move(int xdim, int ydim, int zdim, int x, int y,
85  float *img, vtkDataArray *inVecs,
86  double *result, int z, double *aspect, double *resultNormal);
87  void Move(int xdim, int ydim, int zdim, int x, int y,
88  double *img, vtkDataArray *inVecs,
89  double *result, int z, double *aspect, double *resultNormal);
90  // extension for target instead of maximum
92  double TargetValue;
93 private:
95  void operator=(const vtkSubPixelPositionEdgels&) = delete;
96 };
97 
98 #endif
adjust edgel locations based on gradients.
Store vtkAlgorithm input/output information.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
static vtkPolyDataAlgorithm * New()
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:39
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:54
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
A subclass of ImageData.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.