[Insight-developers] GetInverseTransform - MSVC 6 instantiation bug

Luis Ibanez luis.ibanez at kitware.com
Thu Apr 9 19:02:24 EDT 2009


Paul Koshevoy wrote:
> Luis Ibanez wrote:
> 
>> Hi Bill, Tom,
>>
>> I tried the workaround from vnl_matrix_fixed without success.
>>
>> The work around seem to be indeed addressing the same case of defining
>> a base class of transposed NumCols and NumRows.... so it is still likely
>> that I didn't applied the workaround properly.
>>
>>
>> In the meantime, I have replaced the return inverse type:
>>
>>      Transform< T, NOutputDimensions, NInputDimensions >
>>
>> with
>>
>>      TransformBase
>>
>> CVS commit:
>> http://public.kitware.com/cgi-bin/viewcvs.cgi/Code/Common/itkTransform.h?root=Insight&r1=1.66&r2=1.67&sortby=date 
>>
>>
>> I must admit that the original type is the correct type to use here,
>> so it may still be worth to further investigate the VS60 work around.
>>
>> In the meantime, the code should work fine with the change above.
>>
>>   
> 
> 
> Luis, your change is only applicable to transforms that have the same 
> input/output dimension.  If the dimension varies then the inverse 
> transform type is not the same as the forward transform type -- 
> Inverse(TransformBase<3, 2>) == TransformBase<2, 3>.
> 
>    Pavel
> 
> 
-----------------


Hi Pavel,


     The TransfomBase class is not templated.

     There is no TransformBase<3,2> nor TransformBase<2,3>.

     TransformBase is the non-templated class that was
     introduced in order to support Transform Factories.

     The hierarchy of Transforms is described in:

http://www.itk.org/Insight/Doxygen/html/classitk_1_1TransformBase.html
http://www.itk.org/Insight/Doxygen/html/classitk_1_1TransformBase__inherit__graph.png


     Am I missing something ?



   Thanks


      Luis




More information about the Insight-developers mailing list