14#ifndef itkDiffusionTensor3DResample_h
15#define itkDiffusionTensor3DResample_h
18#include <itkImageToImageFilter.h>
22#include <itkDiffusionTensor3D.h>
23#include <itkCastImageFilter.h>
24#include <itkImageRegionIterator.h>
36template <
class TInput,
class TOutput>
38 :
public ImageToImageFilter
39 <Image<DiffusionTensor3D<TInput>, 3>,
40 Image<DiffusionTensor3D<TOutput>, 3> >
46 typedef ImageToImageFilter
47 <Image<DiffusionTensor3D<TInput>, 3>,
83 itkSetMacro( OutputOrigin,
typename OutputImageType::PointType );
84 itkSetMacro( OutputSpacing,
typename OutputImageType::SpacingType );
85 itkSetMacro( OutputSize,
typename OutputImageType::SizeType );
86 itkSetMacro( OutputDirection,
typename OutputImageType::DirectionType );
89 itkGetMacro( OutputOrigin,
typename OutputImageType::PointType );
90 itkGetMacro( OutputSpacing,
typename OutputImageType::SpacingType );
91 itkGetMacro( OutputSize,
typename OutputImageType::SizeType );
92 itkGetMacro( OutputDirection,
typename OutputImageType::DirectionType );
109 typename OutputImageType::PointType m_OutputOrigin;
110 typename OutputImageType::SpacingType m_OutputSpacing;
111 typename OutputImageType::SizeType m_OutputSize;
112 typename OutputImageType::DirectionType m_OutputDirection;
119#ifndef ITK_MANUAL_INSTANTIATION
120#include "itkDiffusionTensor3DResample.txx"
SmartPointer< Self > Pointer
itk::ImageRegionIterator< OutputImageType > IteratorType
DiffusionTensor3DInterpolateImageFunction< InputDataType > InterpolatorType
void GenerateOutputInformation() override
InputImageType::Pointer InputImagePointerType
void DynamicThreadedGenerateData(const OutputImageRegionType &outputRegionForThread) override
DiffusionTensor3DResample Self
itkSetObjectMacro(Interpolator, InterpolatorType)
void BeforeThreadedGenerateData() override
itkGetMacro(OutputDirection, typename OutputImageType::DirectionType)
itkTypeMacro(DiffusionTensor3DResample, ImageToImageFilter)
itkSetMacro(OutputSpacing, typename OutputImageType::SpacingType)
itkSetObjectMacro(Transform, TransformType)
ImageToImageFilter< Image< DiffusionTensor3D< TInput >, 3 >, Image< DiffusionTensor3D< TOutput >, 3 > > Superclass
Matrix< double, 3, 3 > GetOutputMeasurementFrame()
itkGetMacro(DefaultPixelValue, OutputDataType)
Image< InputTensorDataType, 3 > InputImageType
void GenerateInputRequestedRegion() override
Image< OutputTensorDataType, 3 > OutputImageType
itkGetMacro(OutputSize, typename OutputImageType::SizeType)
DiffusionTensor3DResample()
itkGetMacro(OutputSpacing, typename OutputImageType::SpacingType)
itkSetMacro(OutputSize, typename OutputImageType::SizeType)
itkSetMacro(DefaultPixelValue, OutputDataType)
ModifiedTimeType GetMTime() const override
itkSetMacro(OutputDirection, typename OutputImageType::DirectionType)
DiffusionTensor3DTransform< InputDataType > TransformType
SmartPointer< Self > Pointer
itkGetMacro(OutputOrigin, typename OutputImageType::PointType)
DiffusionTensor3D< InputDataType > InputTensorDataType
void SetOutputParametersFromImage(InputImagePointerType Image)
SmartPointer< const Self > ConstPointer
DiffusionTensor3D< OutputDataType > OutputTensorDataType
itkSetMacro(OutputOrigin, typename OutputImageType::PointType)
OutputImageType::RegionType OutputImageRegionType
void AfterThreadedGenerateData() override
OutputImageType::Pointer OutputImagePointerType
Simplified inverse ITK transforms.