[Insight-developers] ItkQuaternionRigidTransform.h change

Lorensen, William E (Research) lorensen at crd.ge.com
Sat Apr 9 17:58:27 EDT 2005


We really need to be careful about moving/deprecating API's.


-----Original Message-----
From: insight-developers-bounces at itk.org
[mailto:insight-developers-bounces at itk.org]On Behalf Of Stephen R.
Aylward
Sent: Saturday, April 09, 2005 5:04 PM
To: Hans Johnson
Cc: ITK
Subject: Re: [Insight-developers] ItkQuaternionRigidTransform.h change


Hi,

As I recall that method was protected in some classes and public in 
others.   In all, (I believe, but I could really be wrong) it was 
already marked as to-be-deprecated.  When we made the transforms 
consistent we...made them consistent... :)

The proper way to get an inverse of a transform is
GetInverse().   You can then do a GetMatrix from that inverse if you 
wish...or even a gen_vnl_matrix or a GetVnlMatrix or.... :)

Hold it!  I just looked at the code (should have done that before I 
started typing :) )  In itkMatrixOffsetTransformBase, we kept the method 
as public for people just like you :) ...and continued to mark it as 
deprecated.  In QuaternionRigid it is moved to being protected.   Ooops 
- my mistake.   We went back and forth on this and I must have missed one.

You wanna move it or should I?

However - please keep in mind that what you are doing isn't the 
preferred way of doing things - it may eventually go away...I actually 
don't have a problem with there being an GetInverseMatrix, but there was 
an argument against it...I actually don't recall that argument...but it 
was from one of the "big" ITK guys/gals (anyone recall?) so I think it 
was a good argument :)  Could probably check the CVS archive to find out 
who initially deprecated it...

Thanks,
Stephen



Thanks,
Stephen

Hans Johnson wrote:
> Stephen,
> 
> In the file itkQuaternionRigidTransform.h the member function
> GetInverseMatrix was moved from public to private on March 9, 2005.   This
> is breaking a piece of code that I have (I "enhanced" mutual registration
> program to write out "AIR" transform files).  I am sure that I could rewrite
> my code to get the inverse matrix external to the class, but I just wanted
> to make sure that there was a good reason for changing the interface here.
> 
> I just could not tell if this was the desired behavior or an inadvertant
> change during other refactorings.
> 
> Thanks,
> Hans
> 
> 
> _______________________________________________
> Insight-developers mailing list
> Insight-developers at itk.org
> http://www.itk.org/mailman/listinfo/insight-developers

-- 
===========================================================
Dr. Stephen R. Aylward
Associate Professor of Radiology
Adjunct Associate Professor of Computer Science and Surgery
http://caddlab.rad.unc.edu
aylward at unc.edu
(919) 966-9695
_______________________________________________
Insight-developers mailing list
Insight-developers at itk.org
http://www.itk.org/mailman/listinfo/insight-developers


More information about the Insight-developers mailing list