Hi Luis,<br><br>I have not had much time for this problem recently, so I have to face it now again.<br><br>Of course I tried<br><div style="margin-left: 40px;">filter-&gt;UpdateLargestPossibleRegion();<br></div>before and it produced the same error (&quot;Requested region is (at least partially) outside the largest possible region.&quot;) as<br>
<div style="margin-left: 40px;">filter-&gt;Update();<br></div>, therefore I though maybe it should be called elsewhere.<br><br><div class="gmail_quote">On Thu, Mar 18, 2010 at 6:32 PM, Luis Ibanez <span dir="ltr">&lt;<a href="mailto:luis.ibanez@kitware.com">luis.ibanez@kitware.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi Zoltan,<br>
<br>
<br>
You should go to the test from which you are<br>
currently calling<br>
<br>
                        filter-&gt;Update();<br>
<br>
and replace that call with:<br>
<br>
        filter-&gt;UpdateLargestPossibleRegion();<br>
<br>
<br>
<br>
Regards,<br>
<br>
<br>
         Luis<br>
<br>
<br>
---------------------------------------------------------------------<br>
<div><div></div><div class="h5">On Sun, Mar 7, 2010 at 3:04 PM, Zoltan Seress &lt;<a href="mailto:seress.zoltan@gmail.com">seress.zoltan@gmail.com</a>&gt; wrote:<br>
&gt;<br>
&gt; Hi Luis,<br>
&gt; It seems that &quot;C&quot; is the case, but my pipeline runs only once. Here is a<br>
&gt; skeleton of my code, the relevant parts are shown.<br>
&gt; Test.cxx:<br>
&gt;   // the readers are properly set, the images are valid<br>
&gt;   typedef itk::SkeletonFilter&lt;InputImageType&gt; FilterType;<br>
&gt;   FilterType::Pointer filter = FilterType::New();<br>
&gt;     filter-&gt;SetImage1( imageReader1-&gt;GetOutput() );<br>
&gt;     filter-&gt;SetImage2( imageReader2-&gt;GetOutput() );<br>
&gt;     filter-&gt;SetImage3( imageReader3-&gt;GetOutput() );<br>
&gt;     filter-&gt;Update();<br>
&gt; SkeletonFilter.h:<br>
&gt;   // SkeletonFilter is derived from ImageToImageFilter.<br>
&gt; public:<br>
&gt;   /** Input image type. */<br>
&gt;   typedef typename Superclass::InputImageType     InputImageType;<br>
&gt;   typedef typename Superclass::InputImagePointer    InputImagePointer;<br>
&gt;   typedef typename Superclass::InputImageConstPointer<br>
&gt;  InputImageConstPointer;<br>
&gt;   /** Set the first image. */<br>
&gt;   void SetImage1( const InputImageType * fImage )<br>
&gt;   { this-&gt;SetInput( 0, fImage ); }<br>
&gt;   /** Set the second image. */<br>
&gt;   void SetImage2( const InputImageType * sImage )<br>
&gt;   { this-&gt;SetInput( 1, sImage ); }<br>
&gt;   /** Set the third image. */<br>
&gt;   void SetImage3( const InputImageType * tImage )<br>
&gt;   { this-&gt;SetInput( 2, tImage ); }<br>
&gt; protected:<br>
&gt;   SkeletonFilter();<br>
&gt;   virtual ~SkeletonFilter() {};<br>
&gt;   /** This method starts the process. */<br>
&gt;   void GenerateData();<br>
&gt; };<br>
&gt;<br>
&gt; SkeletonFilter.txx:<br>
&gt; // constructor<br>
&gt; template&lt;class TImageType&gt;<br>
&gt; SkeletonFilter&lt;TImageType&gt;<br>
&gt; ::SkeletonFilter()<br>
&gt; {<br>
&gt;   this-&gt;SetNumberOfRequiredInputs(3);<br>
&gt; }<br>
&gt; template&lt;class TImageType&gt;<br>
&gt; void<br>
&gt; SkeletonFilter&lt;TImageType&gt;<br>
&gt; ::GenerateData()<br>
&gt; {<br>
&gt;   InputImageConstPointer image1 = this-&gt;GetInput(0);<br>
&gt;   InputImageConstPointer image2 = this-&gt;GetInput(1);<br>
&gt;   InputImageConstPointer image3 = this-&gt;GetInput(2);<br>
&gt;   if( !image1 )<br>
&gt;     {<br>
&gt;     itkExceptionMacro( &lt;&lt; &quot;image1 was not set&quot; );<br>
&gt;     }<br>
&gt;   if( !image2 )<br>
&gt;     {<br>
&gt;     itkExceptionMacro( &lt;&lt; &quot;image2 was not set&quot; );<br>
&gt;     }<br>
&gt;   if( !image3 )<br>
&gt;     {<br>
&gt;     itkExceptionMacro( &lt;&lt; &quot;image3 was not set&quot; );<br>
&gt;     }<br>
&gt; }<br>
&gt;<br>
&gt;<br>
&gt; So, where should I apply UpdateLargestPossibleRegion() or another solution<br>
&gt; is required in this case?<br>
&gt; Cheers,<br>
&gt; --<br>
&gt; Zoli<br>
&gt;<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>Zoli<br>