[Insight-developers] Re: Compile error with
ITK_USE_ORIENTED_IMAGE_DIRECTION on
Luis Ibanez
luis.ibanez at kitware.com
Fri Dec 7 11:13:02 EST 2007
Hi Bill,
Interesting !
1) I'm not sure why this is not showing up on my Linux build
where these two CMake variables are also ON: zion.kitware
2) The problem seems to arise from the fact that the method:
RotateArrayByDirectionCosines
is implemented at the level of Image and OrientedImage
while PhasedArray3DSpecialCoordinatesImage derives
directly from ImageBase.
It is the same problem for the methods:
TransformPhysicalPointToIndex()
TransformIndexToPhysicalPoint()
3) Easy solution is to move the default implementation of this
method to ImageBase... but... the correct implementation
still must be added to the PhaseArray3DSpecialCoordinatesImage,
with the difficulty that the Direction depends on the point
in space. This means that the API of this method may have to
be modified to look like:
RotateArrayByDirectionCosinesAtPoint( array, point );
Suggestions ?
Luis
----------------------
Bill Lorensen wrote:
> Luis,
>
> If I have ITK_USE_ORIENTED_IMAGE_DIRECTION ON and the optimized
> registration on, I get the following compile error on Windows:
>
>
> ------ Build started: Project: itkBasicFiltersTests1, Configuration:
> Release Win32 ------
>
> Compiling...
>
> itkResamplePhasedArray3DSpecialCoordinatesImageTest.cxx
>
> c:\lorensen\Projects\Insight\Code\Review\itkOptBSplineInterpolateImageFunction.txx(919)
> : error C2039: 'RotateArrayByDirectionCosines' : is not a member of
> 'itk::PhasedArray3DSpecialCoordinatesImage<TPixel>'
>
> with
>
> [
>
> TPixel=PixelType
>
> ]
>
> c:\lorensen\Projects\Insight\Code\Common\itkImageHelper.h(143) : while
> compiling class-template member function
> 'itk::BSplineInterpolateImageFunction<TImageType,TCoordRep,TCoefficientType>::CovariantVectorType
> itk::BSplineInterpolateImageFunction<TImageType,TCoordRep,TCoefficientType>::EvaluateDerivativeAtContinuousIndexInternal(const
> itk::BSplineInterpolateImageFunction<TImageType,TCoordRep,TCoefficientType>::ContinuousIndexType
> &,vnl_matrix<T> &,vnl_matrix<double> &,vnl_matrix<double> &) const'
>
> with
>
> [
>
> TImageType=itk::ResampleImageFilter<InputImageType,ImageType,double>::InputImageType,
>
> TCoordRep=double,
>
> TCoefficientType=double,
>
> T=long
>
> ]
>
> C:\lorensen\Projects\Insight\Code\Review\itkOptResampleImageFilter.h(124)
> : see reference to class template instantiation
> 'itk::BSplineInterpolateImageFunction<TImageType,TCoordRep,TCoefficientType>'
> being compiled
>
> with
>
> [
>
> TImageType=itk::ResampleImageFilter<InputImageType,ImageType,double>::InputImageType,
>
> TCoordRep=double,
>
> TCoefficientType=double
>
> ]
>
> \lorensen\Projects\Insight\Testing\Code\BasicFilters\itkResamplePhasedArray3DSpecialCoordinatesImageTest.cxx(81)
> : see reference to class template instantiation
> 'itk::ResampleImageFilter<TInputImage,TOutputImage,TInterpolatorPrecisionType>'
> being compiled
>
> with
>
> [
>
> TInputImage=InputImageType,
>
> TOutputImage=ImageType,
>
> TInterpolatorPrecisionType=double
>
> ]
>
> Build log was saved at
> "file://c:\lorensen\Projects\Insight-net\Testing\Code\BasicFilters\itkBasicFiltersTests1.dir\Release\BuildLog.htm"
>
> itkBasicFiltersTests1 - 1 error(s), 0 warning(s)
>
>
>
More information about the Insight-developers
mailing list