<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=us-ascii" http-equiv=Content-Type>
<STYLE>BODY {
        MARGIN-TOP: 0em; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0em; COLOR: #000000; FONT-FAMILY: Verdana
}
PRE {
        MARGIN-TOP: 0em; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0em; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
BLOCKQUOTE {
        MARGIN-TOP: 0em; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0em; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
A {
        MARGIN-TOP: 0em; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0em; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
MENU {
        MARGIN-TOP: 0em; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0em; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
DD {
        MARGIN-TOP: 0em; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0em; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
UL {
        MARGIN-TOP: 0em; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0em; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
DT {
        MARGIN-TOP: 0em; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0em; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
DIR {
        MARGIN-TOP: 0em; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0em; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
ADDRESS {
        MARGIN-TOP: 0em; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0em; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
H5 {
        MARGIN-TOP: 0em; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0em; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
H6 {
        MARGIN-TOP: 0em; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0em; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
HR {
        MARGIN-TOP: 0em; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0em; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
P {
        FONT-SIZE: 10pt; MARGIN: 0in 0in 6pt; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
TD {
        FONT-SIZE: 10pt; MARGIN: 0in 0in 6pt; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
TR {
        FONT-SIZE: 10pt; MARGIN: 0in 0in 6pt; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
P.MsoNormal {
        FONT-SIZE: 10pt; MARGIN: 0in 0in 6pt; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
LI.MsoNormal {
        FONT-SIZE: 10pt; MARGIN: 0in 0in 6pt; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
DIV.MsoNormal {
        FONT-SIZE: 10pt; MARGIN: 0in 0in 6pt; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
LI {
        MARGIN-TOP: 3pt; FONT-SIZE: 10pt; MARGIN-BOTTOM: 3pt; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
UL {
        MARGIN-TOP: 3pt; FONT-SIZE: 10pt; MARGIN-BOTTOM: 3pt; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
OL {
        MARGIN-TOP: 3pt; FONT-SIZE: 10pt; MARGIN-BOTTOM: 3pt; COLOR: #000000; FONT-FAMILY: Verdana,Arial,sans-serif
}
H1 {
        FONT-SIZE: 16pt; MARGIN: 12pt 0in 3pt; COLOR: #003366; FONT-FAMILY: Verdana,Arial,sans-serif
}
H2 {
        FONT-SIZE: 14pt; MARGIN: 12pt 0in 3pt; COLOR: #003366; FONT-STYLE: italic; FONT-FAMILY: Verdana,Arial,sans-serif
}
H3 {
        FONT-SIZE: 12pt; MARGIN: 12pt 0in 3pt; COLOR: #003366; FONT-FAMILY: Verdana,Arial,sans-serif
}
H4 {
        FONT-SIZE: 11pt; MARGIN: 12pt 0in 3pt; COLOR: #003366; FONT-FAMILY: Verdana,Arial,sans-serif
}
</STYLE>

<META name=GENERATOR content="MSHTML 8.00.7600.16625"></HEAD>
<BODY style="FONT-FAMILY: Verdana; COLOR: #000000; FONT-SIZE: 10pt" id=ridBody 
background="">
<DIV> </DIV>
<DIV align=left><SPAN class=193411606-22102010>Hi,</SPAN></DIV>
<DIV align=left><SPAN class=193411606-22102010></SPAN> </DIV>
<DIV align=left><SPAN class=193411606-22102010>I wrote a VTK filter and have 
some questions to the design/pipeling:</SPAN></DIV>
<DIV align=left><SPAN class=193411606-22102010></SPAN> </DIV>
<DIV align=left><SPAN class=193411606-22102010></SPAN> </DIV>
<DIV align=left><SPAN class=193411606-22102010></SPAN> </DIV>
<DIV align=left><SPAN class=193411606-22102010></SPAN> </DIV>
<DIV align=left><SPAN class=193411606-22102010></SPAN> </DIV>
<DIV align=left><SPAN class=193411606-22102010></SPAN> </DIV>
<DIV align=left><SPAN class=193411606-22102010></SPAN> </DIV>
<DIV align=left><SPAN class=193411606-22102010></SPAN> </DIV>
<DIV align=left><SPAN class=193411606-22102010></SPAN> </DIV>
<DIV align=left><SPAN class=193411606-22102010>I made (or wanted to made) a 
filter which takes at least two 3D images as input (maximum 4 
inputs) and one image as output. Therefore i made:</SPAN></DIV>
<DIV align=left><SPAN class=193411606-22102010></SPAN> </DIV>
<DIV align=left><SPAN class=193411606-22102010>class MyFilter : public 
vtkImageAlgorithm</SPAN></DIV>
<DIV align=left><SPAN class=193411606-22102010>{</SPAN></DIV>
<DIV align=left><SPAN class=193411606-22102010>    
private:</SPAN></DIV>
<DIV align=left><SPAN class=193411606-22102010>
<P><SPAN class=193411606-22102010>       
</SPAN>MyFilter ()<SPAN class=193411606-22102010> {<FONT 
color=#0000ff>this</FONT>->SetNumberOfInputPorts(<SPAN 
class=193411606-22102010>2</SPAN>);}</SPAN></P></SPAN></DIV>
<DIV align=left><SPAN class=193411606-22102010>    
public:</SPAN></DIV>
<DIV align=left><SPAN 
class=193411606-22102010>       void 
SetImage1(vtkImageData* poImage){<FONT color=#0000ff><FONT 
color=#0000ff>this</FONT></FONT>->SetInput(0, poImage);}</SPAN></DIV>
<DIV align=left><SPAN 
class=193411606-22102010>       void 
SetImage2(vtkImageData* poImage){<FONT color=#0000ff><FONT 
color=#0000ff>this</FONT></FONT>->SetInput(1, poImage);}</SPAN></DIV>
<DIV align=left><SPAN 
class=193411606-22102010>       void 
SetImage3(vtkImageData* poImage)</SPAN><SPAN 
class=193411606-22102010>       </DIV>
<DIV align=left>
<P><SPAN class=193411606-22102010>       
{</SPAN><SPAN class=193411606-22102010><FONT color=#0000ff><FONT 
color=#0000ff></P>
<P><SPAN 
class=193411606-22102010>            
</SPAN>if</FONT></FONT>(<FONT color=#0000ff><FONT 
color=#0000ff>this</FONT></FONT>->GetNumberOfInputPorts() < <SPAN 
class=193411606-22102010>3</SPAN>)</P>
<P><FONT color=#0000ff><SPAN 
class=193411606-22102010>                
</SPAN>this</FONT>->SetNumberOfInputPorts(<SPAN 
class=193411606-22102010>3</SPAN>);</P>
<P><FONT color=#0000ff><SPAN 
class=193411606-22102010>           
</SPAN>this</FONT>->SetInput(<SPAN class=193411606-22102010>2</SPAN>, 
poImage);</P>
<P><SPAN class=193411606-22102010>       
}</SPAN></P></SPAN></SPAN></DIV>
<DIV align=left><SPAN 
class=193411606-22102010>       void 
SetImage4(vtkImageData* poImage)</SPAN></DIV>
<DIV align=left><SPAN 
class=193411606-22102010>       {<SPAN 
class=193411606-22102010><FONT color=#0000ff><FONT color=#0000ff>
<P><SPAN 
class=193411606-22102010>            
</SPAN>if</FONT></FONT>(<FONT color=#0000ff><FONT 
color=#0000ff>this</FONT></FONT>->GetNumberOfInputPorts() < <SPAN 
class=193411606-22102010>4</SPAN>)</P>
<P><FONT color=#0000ff><SPAN 
class=193411606-22102010>                
</SPAN>this</FONT>->SetNumberOfInputPorts(<SPAN 
class=193411606-22102010>4</SPAN>);</P>
<P><FONT color=#0000ff><SPAN 
class=193411606-22102010>           
</SPAN>this</FONT>->SetInput(<SPAN class=193411606-22102010>3</SPAN>, 
poImage);</P>
<P><SPAN class=193411606-22102010>       
}</SPAN></P>
<P><SPAN class=193411606-22102010>   private:</SPAN></P>
<P><SPAN class=193411606-22102010>      void 
RequestData(....){...};</SPAN></SPAN></SPAN></P></DIV>
<DIV align=left><SPAN class=193411606-22102010>}</SPAN></DIV>
<DIV align=left><SPAN class=193411606-22102010></SPAN> </DIV>
<DIV align=left><SPAN class=193411606-22102010>The problem is that the input 
images can have different sizes, e.g.:</SPAN></DIV>
<DIV align=left><SPAN class=193411606-22102010></SPAN> </DIV>
<DIV align=left><SPAN class=193411606-22102010>First image: 
512x512x160</SPAN></DIV>
<DIV align=left><SPAN class=193411606-22102010>Second image: 
512x512x180</SPAN></DIV>
<DIV align=left><SPAN class=193411606-22102010>Third image: 
256x256x160</SPAN></DIV>
<DIV align=left><SPAN class=193411606-22102010>Fourth image: 
256x256x180</SPAN></DIV>
<DIV align=left><SPAN class=193411606-22102010></SPAN> </DIV>
<DIV align=left><SPAN class=193411606-22102010>When i print the input images in 
RequestData i can see that Update Extent is larger than the Whole Extent, and 
that Dimensions and Extent field is wrong (values from the first image)! Do i 
need to specify anything more?</SPAN></DIV></BODY></HTML>