VTK: Filters/Modeling/vtkProjectedTexture.h Source File

| VTK 9.3.1

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
29 #ifndef vtkProjectedTexture_h
30 #define vtkProjectedTexture_h
31
32 #include "vtkDataSetAlgorithm.h"
33 #include "vtkFiltersModelingModule.h" // For export macro
34
35 #define VTK_PROJECTED_TEXTURE_USE_PINHOLE 0
36 #define VTK_PROJECTED_TEXTURE_USE_TWO_MIRRORS 1
37
38 VTK_ABI_NAMESPACE_BEGIN
39 class VTKFILTERSMODELING_EXPORT vtkProjectedTexture : public vtkDataSetAlgorithm
40 {
41 public:
42 static vtkProjectedTexture* New();
43 vtkTypeMacro(vtkProjectedTexture, vtkDataSetAlgorithm);
44 void PrintSelf(ostream& os, vtkIndent indent) override;
45
47
50 vtkSetVector3Macro(Position, double);
51 vtkGetVectorMacro(Position, double, 3);
53
55
59 void SetFocalPoint(double focalPoint[3]);
60 void SetFocalPoint(double x, double y, double z);
61 vtkGetVectorMacro(FocalPoint, double, 3);
63
65
69 vtkSetMacro(CameraMode, int);
70 vtkGetMacro(CameraMode, int);
71 void SetCameraModeToPinhole() { this->SetCameraMode(VTK_PROJECTED_TEXTURE_USE_PINHOLE); }
72 void SetCameraModeToTwoMirror() { this->SetCameraMode(VTK_PROJECTED_TEXTURE_USE_TWO_MIRRORS); }
74
76
79 vtkSetMacro(MirrorSeparation, double);
80 vtkGetMacro(MirrorSeparation, double);
82
84
87 vtkGetVectorMacro(Orientation, double, 3);
89
91
94 vtkSetVector3Macro(Up, double);
95 vtkGetVectorMacro(Up, double, 3);
97
99
109 vtkSetVector3Macro(AspectRatio, double);
110 vtkGetVectorMacro(AspectRatio, double, 3);
112
114
117 vtkSetVector2Macro(SRange, double);
118 vtkGetVectorMacro(SRange, double, 2);
120
122
125 vtkSetVector2Macro(TRange, double);
126 vtkGetVectorMacro(TRange, double, 2);
128
129 protected:
130 vtkProjectedTexture();
131 ~vtkProjectedTexture() override = default;
132
133 int RequestData(vtkInformation*, vtkInformationVector**, vtkInformationVector*) override;
134 void ComputeNormal();
135
136 int CameraMode;
137
138 double Position[3];
139 double Orientation[3];
140 double FocalPoint[3];
141 double Up[3];
142 double MirrorSeparation;
143 double AspectRatio[3];
144 double SRange[2];
145 double TRange[2];
146
147 private:
148 vtkProjectedTexture(const vtkProjectedTexture&) = delete;
149 void operator=(const vtkProjectedTexture&) = delete;
150 };
151
152 VTK_ABI_NAMESPACE_END
153 #endif
vtkDataSetAlgorithm
Superclass for algorithms that produce output of the same type as input.
Definition: vtkDataSetAlgorithm.h:38
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:38
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:40
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:72
vtkProjectedTexture
assign texture coordinates for a projected texture
Definition: vtkProjectedTexture.h:40
vtkProjectedTexture::vtkProjectedTexture
vtkProjectedTexture()
vtkProjectedTexture::SetCameraModeToPinhole
void SetCameraModeToPinhole()
Set/Get the camera mode of the projection – pinhole projection or two mirror projection.
Definition: vtkProjectedTexture.h:71
vtkProjectedTexture::New
static vtkProjectedTexture * New()
vtkProjectedTexture::MirrorSeparation
double MirrorSeparation
Definition: vtkProjectedTexture.h:142
vtkProjectedTexture::RequestData
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called within ProcessRequest when a request asks the algorithm to do its work.
vtkProjectedTexture::SetFocalPoint
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 ...
vtkProjectedTexture::CameraMode
int CameraMode
Definition: vtkProjectedTexture.h:136
vtkProjectedTexture::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkProjectedTexture::SetCameraModeToTwoMirror
void SetCameraModeToTwoMirror()
Set/Get the camera mode of the projection – pinhole projection or two mirror projection.
Definition: vtkProjectedTexture.h:72
vtkProjectedTexture::SetFocalPoint
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::~vtkProjectedTexture
~vtkProjectedTexture() override=default
vtkProjectedTexture::ComputeNormal
void ComputeNormal()
vtkParticleTracerBaseNamespace::Position
struct Position_t Position
Definition: vtkParticleTracerBase.h:55
vtkDataSetAlgorithm.h
VTK_PROJECTED_TEXTURE_USE_PINHOLE
#define VTK_PROJECTED_TEXTURE_USE_PINHOLE
Definition: vtkProjectedTexture.h:35
VTK_PROJECTED_TEXTURE_USE_TWO_MIRRORS
#define VTK_PROJECTED_TEXTURE_USE_TWO_MIRRORS
Definition: vtkProjectedTexture.h:36