Loading [MathJax]/extensions/tex2jax.js
VTK  9.4.20250219
vtkTemporalShiftScale.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
24#ifndef vtkTemporalShiftScale_h
25#define vtkTemporalShiftScale_h
26
27#include "vtkAlgorithm.h"
28#include "vtkFiltersHybridModule.h" // For export macro
29
30#include <map> // for std::map
31
32VTK_ABI_NAMESPACE_BEGIN
33class VTKFILTERSHYBRID_EXPORT vtkTemporalShiftScale : public vtkAlgorithm
34{
35public:
38 void PrintSelf(ostream& os, vtkIndent indent) override;
39
41
46 vtkSetMacro(PreShift, double);
47 vtkGetMacro(PreShift, double);
49
51
54 vtkSetMacro(PostShift, double);
55 vtkGetMacro(PostShift, double);
57
59
62 vtkSetMacro(Scale, double);
63 vtkGetMacro(Scale, double);
65
67
80 vtkSetMacro(Periodic, vtkTypeBool);
81 vtkGetMacro(Periodic, vtkTypeBool);
82 vtkBooleanMacro(Periodic, vtkTypeBool);
84
86
95 vtkSetMacro(PeriodicEndCorrection, vtkTypeBool);
96 vtkGetMacro(PeriodicEndCorrection, vtkTypeBool);
97 vtkBooleanMacro(PeriodicEndCorrection, vtkTypeBool);
99
101
106 vtkSetMacro(MaximumNumberOfPeriods, double);
107 vtkGetMacro(MaximumNumberOfPeriods, double);
109
110protected:
113
114 double PreShift;
115 double PostShift;
116 double Scale;
120 //
121 double InRange[2];
122 double OutRange[2];
123 double PeriodicRange[2];
126
131 vtkInformationVector* outputVector) override;
132
134
135 int FillInputPortInformation(int port, vtkInformation* info) override;
136 int FillOutputPortInformation(int vtkNotUsed(port), vtkInformation* info) override;
137
139
141
143
144 double ForwardConvert(double T0);
145 double BackwardConvert(double T1);
146
147private:
149 void operator=(const vtkTemporalShiftScale&) = delete;
150
151 std::map<double, double> OutputToInputTimes;
152};
153
154VTK_ABI_NAMESPACE_END
155#endif
Superclass for all sources, filters, and sinks in VTK.
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
modify the time range/steps of temporal data
int FillOutputPortInformation(int vtkNotUsed(port), vtkInformation *info) override
double BackwardConvert(double T1)
~vtkTemporalShiftScale() override
double ForwardConvert(double T0)
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
static vtkTemporalShiftScale * New()
vtkTypeBool ProcessRequest(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
see vtkAlgorithm for details
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int RequestDataObject(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int vtkTypeBool
Definition vtkABI.h:64