VTK  9.0.3
vtkThresholdTextureCoords.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkThresholdTextureCoords.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 =========================================================================*/
38 #ifndef vtkThresholdTextureCoords_h
39 #define vtkThresholdTextureCoords_h
40 
41 #include "vtkDataSetAlgorithm.h"
42 #include "vtkFiltersTextureModule.h" // For export macro
43 
44 class VTKFILTERSTEXTURE_EXPORT vtkThresholdTextureCoords : public vtkDataSetAlgorithm
45 {
46 public:
49  void PrintSelf(ostream& os, vtkIndent indent) override;
50 
54  void ThresholdByLower(double lower);
55 
59  void ThresholdByUpper(double upper);
60 
64  void ThresholdBetween(double lower, double upper);
65 
67 
70  vtkGetMacro(UpperThreshold, double);
71  vtkGetMacro(LowerThreshold, double);
73 
75 
78  vtkSetClampMacro(TextureDimension, int, 1, 3);
79  vtkGetMacro(TextureDimension, int);
81 
83 
86  vtkSetVector3Macro(InTextureCoord, double);
87  vtkGetVectorMacro(InTextureCoord, double, 3);
89 
91 
95  vtkSetVector3Macro(OutTextureCoord, double);
96  vtkGetVectorMacro(OutTextureCoord, double, 3);
98 
99 protected:
102 
103  // Usual data generation method
105 
108 
110 
111  double InTextureCoord[3];
112  double OutTextureCoord[3];
113 
114  int (vtkThresholdTextureCoords::*ThresholdFunction)(double s);
115 
116  int Lower(double s) { return (s <= this->LowerThreshold ? 1 : 0); }
117  int Upper(double s) { return (s >= this->UpperThreshold ? 1 : 0); }
118  int Between(double s)
119  {
120  return (s >= this->LowerThreshold ? (s <= this->UpperThreshold ? 1 : 0) : 0);
121  }
122 
123 private:
125  void operator=(const vtkThresholdTextureCoords&) = delete;
126 };
127 
128 #endif
Superclass for algorithms that produce output of the same type as input.
a simple class to control print indentation
Definition: vtkIndent.h:34
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
compute 1D, 2D, or 3D texture coordinates based on scalar threshold
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void ThresholdBetween(double lower, double upper)
Criterion is cells whose scalars are between lower and upper thresholds.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called within ProcessRequest when a request asks the algorithm to do its work.
static vtkThresholdTextureCoords * New()
void ThresholdByLower(double lower)
Criterion is cells whose scalars are less than lower threshold.
void ThresholdByUpper(double upper)
Criterion is cells whose scalars are less than upper threshold.