VTK  9.3.20240422
vtkProjectedTexture.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
39#ifndef vtkProjectedTexture_h
40#define vtkProjectedTexture_h
41
42#include "vtkDataSetAlgorithm.h"
43#include "vtkFiltersModelingModule.h" // For export macro
44
45#define VTK_PROJECTED_TEXTURE_USE_PINHOLE 0
46#define VTK_PROJECTED_TEXTURE_USE_TWO_MIRRORS 1
47
48VTK_ABI_NAMESPACE_BEGIN
49class VTKFILTERSMODELING_EXPORT vtkProjectedTexture : public vtkDataSetAlgorithm
50{
51public:
54 void PrintSelf(ostream& os, vtkIndent indent) override;
55
57
60 vtkSetVector3Macro(Position, double);
61 vtkGetVectorMacro(Position, double, 3);
63
65
69 void SetFocalPoint(double focalPoint[3]);
70 void SetFocalPoint(double x, double y, double z);
71 vtkGetVectorMacro(FocalPoint, double, 3);
73
75
79 vtkSetMacro(CameraMode, int);
80 vtkGetMacro(CameraMode, int);
84
86
89 vtkSetMacro(MirrorSeparation, double);
90 vtkGetMacro(MirrorSeparation, double);
92
94
97 vtkGetVectorMacro(Orientation, double, 3);
99
101
104 vtkSetVector3Macro(Up, double);
105 vtkGetVectorMacro(Up, double, 3);
107
109
119 vtkSetVector3Macro(AspectRatio, double);
120 vtkGetVectorMacro(AspectRatio, double, 3);
122
124
127 vtkSetVector2Macro(SRange, double);
128 vtkGetVectorMacro(SRange, double, 2);
130
132
135 vtkSetVector2Macro(TRange, double);
136 vtkGetVectorMacro(TRange, double, 2);
138
139protected:
141 ~vtkProjectedTexture() override = default;
142
145
147
148 double Position[3];
149 double Orientation[3];
150 double FocalPoint[3];
151 double Up[3];
153 double AspectRatio[3];
154 double SRange[2];
155 double TRange[2];
156
157private:
159 void operator=(const vtkProjectedTexture&) = delete;
160};
161
162VTK_ABI_NAMESPACE_END
163#endif
Superclass for algorithms that produce output of the same type as input.
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
assign texture coordinates for a projected texture
static vtkProjectedTexture * New()
void SetCameraModeToPinhole()
Set/Get the camera mode of the projection – pinhole projection or two mirror projection.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called within ProcessRequest when a request asks the algorithm to do its work.
void SetFocalPoint(double focalPoint[3])
Set/Get the focal point of the projector (a point that lies along the center axis of the projector's ...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetCameraModeToTwoMirror()
Set/Get the camera mode of the projection – pinhole projection or two mirror projection.
void SetFocalPoint(double x, double y, double z)
Set/Get the focal point of the projector (a point that lies along the center axis of the projector's ...
~vtkProjectedTexture() override=default
#define VTK_PROJECTED_TEXTURE_USE_PINHOLE
#define VTK_PROJECTED_TEXTURE_USE_TWO_MIRRORS