21 #ifndef __vtkOrientedImageDataResample_h 22 #define __vtkOrientedImageDataResample_h 25 #include "vtkSegmentationCoreConfigure.h" 28 #include "vtkObject.h" 37 class vtkAbstractTransform;
82 static void TransformOrientedImage(
vtkOrientedImageData* image, vtkAbstractTransform* transform,
bool geometryOnly=
false,
bool alwaysResample=
false,
bool linearInterpolation=
false,
double backgroundColor[4]=
nullptr);
88 const int extent[6]=
nullptr,
double maskThreshold = 0,
double fillValue = 1,
bool *outputModified=
nullptr);
95 const int extent[6] =
nullptr,
double maskThreshold = 0,
double fillValue = 1);
101 static void PrintImageInformation(vtkImageData* imageData, ostream& os, vtkIndent indent);
105 static void FillImage(vtkImageData* image,
double fillValue,
const int extent[6]=
nullptr);
109 static bool CalculateEffectiveExtent(
vtkOrientedImageData* image,
int effectiveExtent[6],
double threshold = 0.0);
124 static void TransformExtent(
const int inputExtent[6], vtkAbstractTransform* inputToOutputTransform,
int outputExtent[6]);
128 static void TransformBounds(
const double inputBounds[6], vtkAbstractTransform* inputToOutputTransform,
double outputBounds[6]);
131 static void TransformOrientedImageDataBounds(
vtkOrientedImageData* image, vtkAbstractTransform* transform,
double transformedBounds[6]);
136 static bool IsEqual(vtkMatrix4x4* lhs, vtkMatrix4x4* rhs);
154 static bool IsTransformLinear(vtkAbstractTransform* transform, vtkTransform* linearTransform);
157 static bool DoesTransformMatrixContainShear(vtkMatrix4x4* matrix);
175 const int extent[6]=
nullptr,
int maskThreshold = 0);
184 int extent[6]=
nullptr,
int maskThreshold=0);
Utility functions for resampling oriented image data.
static bool AreEqualWithTolerance(double a, double b)
Compare two floating point numbers within tolerance.
Image data containing orientation information.