Go to the documentation of this file.
47 #ifndef vtkPerspectiveTransform_h
48 #define vtkPerspectiveTransform_h
80 double oldYMin,
double oldYMax,
81 double newXMin,
double newXMax,
82 double newYMin,
double newYMax);
92 double newNearZ,
double newFarZ);
99 void Ortho(
double xmin,
double xmax,
double ymin,
double ymax,
100 double znear,
double zfar);
108 void Frustum(
double xmin,
double xmax,
double ymin,
double ymax,
109 double znear,
double zfar);
128 void Shear(
double dxdz,
double dydz,
double zplane);
144 const double viewup[3]);
148 double fp0,
double fp1,
double fp2,
149 double vup0,
double vup1,
double vup2);
155 this->Concatenation->Translate(
x,
y,
z); };
166 this->Concatenation->Rotate(
angle,
x,
y,
z); };
168 this->RotateWXYZ(
angle, axis[0], axis[1], axis[2]); };
170 this->RotateWXYZ(
angle, axis[0], axis[1], axis[2]); };
187 this->Concatenation->Scale(
x,
y,
z); };
196 this->SetMatrix(*
matrix->Element); };
198 this->Identity(); this->Concatenate(elements); };
205 this->Concatenate(*
matrix->Element); };
207 this->Concatenation->Concatenate(elements); };
224 if (this->Concatenation->GetPreMultiplyFlag()) {
return; }
225 this->Concatenation->SetPreMultiplyFlag(1); this->
Modified(); };
235 if (!this->Concatenation->GetPreMultiplyFlag()) {
return; }
236 this->Concatenation->SetPreMultiplyFlag(0); this->
Modified(); };
243 return this->Concatenation->GetNumberOfTransforms() +
244 (this->Input == NULL ? 0 : 1); };
256 if (this->Input == NULL)
258 t=this->Concatenation->GetTransform(i);
260 else if (i < this->Concatenation->GetNumberOfPreTransforms())
262 t=this->Concatenation->GetTransform(i);
264 else if (i > this->Concatenation->GetNumberOfPreTransforms())
266 t=this->Concatenation->GetTransform(i-1);
268 else if (this->GetInverseFlag())
270 t=this->Input->GetInverse();
297 return this->Concatenation->GetInverseFlag(); };
302 void Push() {
if (this->Stack == NULL) {
304 this->Stack->Push(&this->Concatenation);
311 void Pop() {
if (this->Stack == NULL) {
return; }
312 this->Stack->Pop(&this->Concatenation);
#define vtkTypeMacro(thisClass, superclass)
GLint GLint GLint GLint GLint x
GLenum GLenum GLenum input
a simple class to control print indentation
represent and manipulate 4x4 transformation matrices
GLint GLint GLint GLint GLint GLint y
GLuint GLenum GLenum transform