VTK  9.1.0
vtkProjectedTexture.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkProjectedTexture.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=========================================================================*/
41#ifndef vtkProjectedTexture_h
42#define vtkProjectedTexture_h
43
44#include "vtkDataSetAlgorithm.h"
45#include "vtkFiltersModelingModule.h" // For export macro
46
47#define VTK_PROJECTED_TEXTURE_USE_PINHOLE 0
48#define VTK_PROJECTED_TEXTURE_USE_TWO_MIRRORS 1
49
50class VTKFILTERSMODELING_EXPORT vtkProjectedTexture : public vtkDataSetAlgorithm
51{
52public:
55 void PrintSelf(ostream& os, vtkIndent indent) override;
56
58
61 vtkSetVector3Macro(Position, double);
62 vtkGetVectorMacro(Position, double, 3);
64
66
70 void SetFocalPoint(double focalPoint[3]);
71 void SetFocalPoint(double x, double y, double z);
72 vtkGetVectorMacro(FocalPoint, double, 3);
74
76
80 vtkSetMacro(CameraMode, int);
81 vtkGetMacro(CameraMode, int);
85
87
90 vtkSetMacro(MirrorSeparation, double);
91 vtkGetMacro(MirrorSeparation, double);
93
95
98 vtkGetVectorMacro(Orientation, double, 3);
100
102
105 vtkSetVector3Macro(Up, double);
106 vtkGetVectorMacro(Up, double, 3);
108
110
120 vtkSetVector3Macro(AspectRatio, double);
121 vtkGetVectorMacro(AspectRatio, double, 3);
123
125
128 vtkSetVector2Macro(SRange, double);
129 vtkGetVectorMacro(SRange, double, 2);
131
133
136 vtkSetVector2Macro(TRange, double);
137 vtkGetVectorMacro(TRange, double, 2);
139
140protected:
142 ~vtkProjectedTexture() override = default;
143
146
148
149 double Position[3];
150 double Orientation[3];
151 double FocalPoint[3];
152 double Up[3];
154 double AspectRatio[3];
155 double SRange[2];
156 double TRange[2];
157
158private:
160 void operator=(const vtkProjectedTexture&) = delete;
161};
162
163#endif
Superclass for algorithms that produce output of the same type as input.
a simple class to control print indentation
Definition: vtkIndent.h:43
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