<html><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:12pt">Thanks David,<br><br>Just before reading your email, I already added <br><div><span>inInfo->Get(vtkStreamingDemandDrivenPipeline::WHOLE_EXTENT(), inExt);<br>  inInfo->Set(vtkStreamingDemandDrivenPipeline::UPDATE_EXTENT(), inExt, 6);</span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><span>to the code in RequestUpdateExtent() and that caused the errors to disappear. But it is good to see it seems to work in another filter too ;-)</span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style:
 normal;"><br><span></span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><span>Something is still wrong in the algorithm code though, because I need to call Update() to get a sensible output. Without it, the output disappears from the renderwindow after a new render (although the algorithm's RequestData is called...?)</span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><br><span></span></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><span>Maybe </span>vtkImageHistogram will give me a clue, although I don't see an internal
 pipeline in it...</div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;"><br></div><div style="color: rgb(0, 0, 0); font-size: 16px; font-family: HelveticaNeue,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; background-color: transparent; font-style: normal;">Maarten<br></div><div style="display: block;" class="yahoo_quoted"> <br> <br> <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 12pt;"> <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 12pt;"> <div dir="ltr"> <font size="2" face="Arial"> On Tuesday, January 14, 2014 9:58:09 AM, David Gobbi <david.gobbi@gmail.com> wrote:<br> </font> </div>  <div class="y_msg_container">Hi Maarten,<br clear="none"><br clear="none">In order to set
 the output extent independent of the input extent,<br clear="none">all you should have to do is override RequestInformation() and<br clear="none">RequestUpdateExtent().  It is definitely not necessary to set<br clear="none">UNRESTRICTED_UPDATE_EXTENT or EXACT_EXTENT.<br clear="none">Take a look at vtkImageHistogram.cxx as an example of a filter<br clear="none">that has a 3D input and an independently-sized 2D output.<br clear="none"><br clear="none">  David<br clear="none"><div class="yqt5235548693" id="yqtfd70041"><br clear="none">On Mon, Jan 13, 2014 at 1:45 PM, Maarten Beek <<a shape="rect" ymailto="mailto:beekmaarten@yahoo.com" href="mailto:beekmaarten@yahoo.com">beekmaarten@yahoo.com</a>> wrote:<br clear="none">> Hi all,<br clear="none">><br clear="none">> I am trying to write an (image) algorithm that generates a 2d image from a<br clear="none">> 3d image.<br clear="none">> I would like to be able to set the
 resolution of the 2d image.<br clear="none">> The extents of the input and output are therefore unrelated.<br clear="none">><br clear="none">> I have the algorithm working when I set the algorithm's input in an<br clear="none">> unofficial way (SetNumberOfInputPorts(0), using a custom function SetInput<br clear="none">> instead of SetInputConnection or SetInputData). This way there is no<br clear="none">> pipeline created, which I would like to happen.<br clear="none">><br clear="none">> I set the whole extent of the algorithm's output to the desired (2d) extent<br clear="none">> in RequestInformation. However, the function<br clear="none">> vtkStreamingDemandDrivenPipeline::VerifyOutputInformation() fails because<br clear="none">> this whole extent miraculously gets re-set to whole (3d) extent of the<br clear="none">> input.<br clear="none">> I have tried to prevent this check using<br clear="none">>
 outInfo->Set(vtkStreamingDemandDrivenPipeline::UNRESTRICTED_UPDATE_EXTENT(),<br clear="none">> 1) and<br clear="none">> outInfo->Set(vtkStreamingDemandDrivenPipeline::EXACT_EXTENT(), 0) to no<br clear="none">> avail.<br clear="none">><br clear="none">> How do I prevent the adjustment of the whole extent after I have set it to<br clear="none">> the desired value?<br clear="none">><br clear="none">> Thanks - Maarten<br clear="none"></div><br><br></div>  </div> </div>  </div> </div></body></html>