39#ifndef vtkAbstractTransform_h
40#define vtkAbstractTransform_h
42#include "vtkCommonTransformsModule.h"
64 this->InternalTransformPoint(in, out);
74 this->InternalTransformPoint(in, out);
83 return this->TransformDoublePoint(x, y, z);
87 return this->TransformPoint(point[0], point[1], point[2]);
97 this->InternalFloatPoint[0] = x;
98 this->InternalFloatPoint[1] = y;
99 this->InternalFloatPoint[2] = z;
100 this->TransformPoint(this->InternalFloatPoint, this->InternalFloatPoint);
101 return this->InternalFloatPoint;
105 return this->TransformFloatPoint(point[0], point[1], point[2]);
116 this->InternalDoublePoint[0] = x;
117 this->InternalDoublePoint[1] = y;
118 this->InternalDoublePoint[2] = z;
119 this->TransformPoint(this->InternalDoublePoint, this->InternalDoublePoint);
120 return this->InternalDoublePoint;
124 return this->TransformDoublePoint(point[0], point[1], point[2]);
140 this->TransformNormalAtPoint(point, normal, this->InternalDoublePoint);
141 return this->InternalDoublePoint;
153 this->TransformNormalAtPoint(point, normal, this->InternalDoublePoint);
154 return this->InternalDoublePoint;
166 this->TransformNormalAtPoint(point, normal, this->InternalFloatPoint);
167 return this->InternalFloatPoint;
183 this->TransformVectorAtPoint(point, vector, this->InternalDoublePoint);
184 return this->InternalDoublePoint;
196 this->TransformVectorAtPoint(point, vector, this->InternalDoublePoint);
197 return this->InternalDoublePoint;
209 this->TransformVectorAtPoint(point, vector, this->InternalFloatPoint);
210 return this->InternalFloatPoint;
226 int nOptionalVectors = 0,
vtkDataArray** inVrsArr =
nullptr,
280 const float in[3],
float out[3],
float derivative[3][3]) = 0;
282 const double in[3],
double out[3],
double derivative[3][3]) = 0;
325 float InternalFloatPoint[3];
326 double InternalDoublePoint[3];
337 std::mutex UpdateMutex;
338 std::mutex InverseMutex;
339 int DependsOnInverse;
368 this->InverseTransform = tmp;
405 void Rotate(
double angle,
double x,
double y,
double z);
406 void Scale(
double x,
double y,
double z);
abstract superclass for arrays of numeric data
a simple class to control print indentation
represent and manipulate 4x4 transformation matrices
abstract base class for most VTK objects
abstract base class for most VTK objects
represent and manipulate 3D points
record modification and/or execution time
vtkTypeUInt32 vtkMTimeType
#define VTK_SIZEHINT(...)