Logged as a bug; I'd write a patch if I can figure out how to do the C++ 
template metaprogramming magic.

I ran into this when I needed to multiply an itk::VectorImage by a scalar 
constant.  Using the MultiplyImageFilter, the SetConstant (and SetConstant1 and 
SetConstant2) methods only accept InputImage1PixelType as a constant.

So, because I was deep into abstruse code, my naïve solution was to instantiate 
an itk::VariableLengthVector as the constant to pass to SetConstant, where each 
element was the scalar constant.

This is, upon further reflection, absurd, because A * B for vectors doesn't 
even make sense in matrix math, and there's no operator for pairwise 
multiplication of vector elements.

But what I found out running my program is that itk::VariableLengthVector will 
instantiate an operator * with boundless recursion.

There are two problems: not disallowing boundless recursion, and not supporting 
scalar constants for vector Images in itk::BinaryFunctorImageFilter.

https://issues.itk.org/jira/browse/SIMPLEITK-498



________________________________
Notice: This UI Health Care e-mail (including attachments) is covered by the 
Electronic Communications Privacy Act, 18 U.S.C. 2510-2521, is confidential and 
may be legally privileged.  If you are not the intended recipient, you are 
hereby notified that any retention, dissemination, distribution, or copying of 
this communication is strictly prohibited.  Please reply to the sender that you 
have received the message in error, then delete it.  Thank you.
________________________________
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html

Kitware offers ITK Training Courses, for more information visit:
http://kitware.com/products/protraining.php

Please keep messages on-topic and check the ITK FAQ at:
http://www.itk.org/Wiki/ITK_FAQ

Follow this link to subscribe/unsubscribe:
http://www.itk.org/mailman/listinfo/insight-developers

Reply via email to