VTK  9.2.6
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 =========================================================================*/
60 #ifndef vtkThresholdTextureCoords_h
61 #define vtkThresholdTextureCoords_h
62 
63 #include "vtkDataSetAlgorithm.h"
64 #include "vtkFiltersTextureModule.h" // For export macro
65 
66 class VTKFILTERSTEXTURE_EXPORT vtkThresholdTextureCoords : public vtkDataSetAlgorithm
67 {
68 public:
71  void PrintSelf(ostream& os, vtkIndent indent) override;
72 
76  void ThresholdByLower(double lower);
77 
81  void ThresholdByUpper(double upper);
82 
86  void ThresholdBetween(double lower, double upper);
87 
89 
92  vtkGetMacro(UpperThreshold, double);
93  vtkGetMacro(LowerThreshold, double);
95 
97 
100  vtkSetClampMacro(TextureDimension, int, 1, 3);
101  vtkGetMacro(TextureDimension, int);
103 
105 
108  vtkSetVector3Macro(InTextureCoord, double);
109  vtkGetVectorMacro(InTextureCoord, double, 3);
111 
113 
117  vtkSetVector3Macro(OutTextureCoord, double);
118  vtkGetVectorMacro(OutTextureCoord, double, 3);
120 
121 protected:
123  ~vtkThresholdTextureCoords() override = default;
124 
125  // Usual data generation method
127 
130 
132 
133  double InTextureCoord[3];
134  double OutTextureCoord[3];
135 
136  int (vtkThresholdTextureCoords::*ThresholdFunction)(double s);
137 
138  int Lower(double s) { return (s <= this->LowerThreshold ? 1 : 0); }
139  int Upper(double s) { return (s >= this->UpperThreshold ? 1 : 0); }
140  int Between(double s)
141  {
142  return (s >= this->LowerThreshold ? (s <= this->UpperThreshold ? 1 : 0) : 0);
143  }
144 
145 private:
147  void operator=(const vtkThresholdTextureCoords&) = delete;
148 };
149 
150 #endif
Superclass for algorithms that produce output of the same type as input.
a simple class to control print indentation
Definition: vtkIndent.h:119
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.
~vtkThresholdTextureCoords() override=default