[Insight-developers] CMake Flag to make itk::Image behave like itk::OrientedImage

Stephen Aylward Stephen.Aylward at Kitware.com
Sun Sep 14 16:13:22 EDT 2008


Another cmake variable?!?!?

We now have 26 boolean cmake variables that begin with ITK_ and turn
on/off an option.  That means that there are 2^26 = 67,108,864
different possible combinations of ITK configurations that we should
be testing and supporting.

Even worse, that means that users now have 26 different decisions to
make when installing ITK.

What a wonderful example of feature creep degrading a package...

s

On Sun, Sep 14, 2008 at 12:52 PM, Bill Lorensen <bill.lorensen at gmail.com> wrote:
> Luis,
>
> They may all boil down to a few issues. For example, the OrientedImage
> constructor set two matrices to Identity. This is not done in Image.
> I'm fixing that now.
>
> Bill
>
> On Sun, Sep 14, 2008 at 12:24 PM, Luis Ibanez <luis.ibanez at kitware.com> wrote:
>>
>> Hi Hans,
>>
>> As we agreed during the ITK Tcon 2.0 on Friday:
>>
>>     http://www.itk.org/Wiki/Minutes_091208
>>
>> a CMake flag has now been added to the top CMakeLists.txt
>> file with the purpose of optionally changing the itk::Image
>> to behave like the itk::OrientedImage.
>>
>> You can now turn this option on by going to the CMake Advanced
>> flags and changing:
>>
>>
>>        ITK_IMAGE_BEHAVES_AS_ORIENTED_IMAGE
>>
>> The code from
>>
>>
>>   SetSpacing
>>   SetDirection
>>   TransformPhysicalPointToIndex
>>   TransformIndexToPhysicalPoint
>>   TransformPhysicalPointToContinuousIndex
>>   TransformContinuousIndexToPhysicalPoint
>>
>>
>> was copied from the itk::OrientedImage into the itk::Image.
>>
>> The new code is only used if the ITK_IMAGE_BEHAVES_AS_ORIENTED_IMAGE
>> flag is ON.
>>
>> Once the dust settles we can prevent the code duplication by moving
>> this into specific methods that the itk::OrientedImage can inherit
>> from the itk::Image.
>>
>> After fixing code in a couple of places, this complies with the flag
>> ON (at least under Linux with Gcc 4.1).
>>
>> However, as you predicted, a large number of test fail when the flag
>> is ON. An Experimental build with the flag ON was submitted yesterday
>> from zion. You will find the failing tests of this build at:
>>
>> http://www.cdash.org/CDash/viewTest.php?onlyfailed&buildid=171151
>>
>> There are 106 failing tests.
>> They broadly fall in the following categories:
>>
>>  1) ImageIO
>>     - Analyze
>>     - Nrrd
>>
>>  2) Mathematical Morphology
>>
>>  3) Image Registration
>>     - normal framework and
>>     - deformable registration
>>
>>  4) Resampling
>>
>>
>> My suggestion is to split these groups among several developers.
>>
>> I'll be happy to look at the Image registration problems.
>>
>> Hopefully, as Ken pointed out, after fixing a couple of them
>> we will find a pattern to follow.
>>
>>
>>  Please let us know if this makes sense,
>>
>>
>>      Thanks
>>
>>
>>        Luis
>>
>>
>> _______________________________________________
>> Insight-developers mailing list
>> Insight-developers at itk.org
>> http://www.itk.org/mailman/listinfo/insight-developers
>>
> _______________________________________________
> Insight-developers mailing list
> Insight-developers at itk.org
> http://www.itk.org/mailman/listinfo/insight-developers
>



-- 
Stephen R. Aylward, Ph.D.
Chief Medical Scientist
Kitware, Inc. - North Carolina Office
http://www.kitware.com
(518) 371-3971 x300


More information about the Insight-developers mailing list