<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=big5">
<META content="MSHTML 5.50.4522.1800" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>Hello,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; I want to write a VTK program 
with multi-render in C++. But only the last one render (ren4) can display, 
others render is totoally black.</FONT></DIV>
<DIV><FONT face=Arial size=2>Does anybody know why?</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Tony Chung</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>My code.</FONT></DIV>
<DIV><FONT face=Arial 
size=2>-------------------------------------------------------------</FONT></DIV>
<DIV><FONT face=Arial size=2>void main( int argc, char *argv[] 
)<BR>{</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp;int i;<BR>&nbsp; // create a rendering window 
and both renderers<BR>&nbsp;renWin = 
vtkRenderWindow::New();<BR>&nbsp;vtkRenderer *ren1 = 
vtkRenderer::New();&nbsp;&nbsp;&nbsp;// main 
window<BR>&nbsp;renWin-&gt;AddRenderer(ren1);<BR>&nbsp;vtkRenderer *ren2 = 
vtkRenderer::New();&nbsp;&nbsp;&nbsp;// sub-win 1<BR>&nbsp;&nbsp;&nbsp; 
renWin-&gt;AddRenderer(ren2);<BR>&nbsp;vtkRenderer *ren3 = 
vtkRenderer::New();&nbsp;&nbsp;&nbsp;// sub-win 2<BR>&nbsp;&nbsp;&nbsp; 
renWin-&gt;AddRenderer(ren3);<BR>&nbsp;vtkRenderer *ren4 = 
vtkRenderer::New();&nbsp;&nbsp;&nbsp;// sub-win 3<BR>&nbsp;&nbsp;&nbsp; 
renWin-&gt;AddRenderer(ren4);<BR>&nbsp;<BR>&nbsp;iren = 
vtkRenderWindowInteractor::New();<BR>&nbsp;iren-&gt;SetRenderWindow(renWin);</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp;// read the volume<BR>&nbsp; v16 = 
vol_reader();<BR>&nbsp; // ********* create a b/w lookup table 
*************<BR>&nbsp; bwLut = bw_table();<BR>c = 32;<BR>&nbsp; // ********* 
create coronal plane ******************<BR>&nbsp; coronal&nbsp;= 
cor_plane(v16,c,bwLut);<BR>&nbsp; coronal-&gt;PickableOff();<BR>a = 
32;<BR>&nbsp; // ********* create axial plane ********************<BR>&nbsp; 
axial&nbsp;&nbsp;= axi_plane(v16,a,bwLut);<BR>&nbsp; 
axial-&gt;PickableOff();<BR>s = 32;<BR>&nbsp; // ********* create sagittal plane 
*****************<BR>&nbsp; sagittal= sag_plane(v16,s,bwLut);<BR>&nbsp; 
sagittal-&gt;PickableOff();</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp; 
/**************************************************************/<BR>&nbsp;</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp; // assign our actor to both 
renderers<BR>&nbsp;ren1-&gt;AddActor(sagittal);<BR>&nbsp;ren1-&gt;AddActor(axial);<BR>&nbsp;ren1-&gt;AddActor(coronal);<BR>&nbsp;<BR>&nbsp;ren2-&gt;AddActor(axial);<BR>&nbsp;ren3-&gt;AddActor(sagittal);<BR>&nbsp;ren4-&gt;AddActor(coronal);</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp; // set the size of our 
window<BR>&nbsp;renWin-&gt;SetSize(600,300);</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp; vtkCamera *aCamera = 
vtkCamera::New();<BR>&nbsp; aCamera-&gt;SetViewUp (0, 0, -1);<BR>&nbsp; 
aCamera-&gt;SetPosition (0, 10, 0);<BR>&nbsp; aCamera-&gt;SetFocalPoint (0, 0, 
0);<BR>&nbsp; aCamera-&gt;ComputeViewPlaneNormal();<BR>&nbsp; <BR>&nbsp; 
ren1-&gt;SetActiveCamera(aCamera);<BR>&nbsp; ren1-&gt;ResetCamera ();<BR>&nbsp; 
aCamera-&gt;Dolly(1.5);<BR>&nbsp; 
ren1-&gt;ResetCameraClippingRange();</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp; // set the viewports and background of the 
renderers<BR>&nbsp;ren1-&gt;SetViewport(0,0,0.6,1);<BR>&nbsp;ren2-&gt;SetViewport(0.6,0,1,0.33);<BR>&nbsp;ren3-&gt;SetViewport(0.6,0.33,1,0.66);<BR>&nbsp;ren4-&gt;SetViewport(0.6,0.66,1,1);</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial 
size=2>&nbsp;ren1-&gt;SetBackground(0.2,0.3,0.5);<BR>&nbsp;ren2-&gt;SetBackground(0.2,0.5,0.3);<BR>&nbsp;ren3-&gt;SetBackground(0.4,0.2,0.1);<BR>&nbsp;ren4-&gt;SetBackground(0.3,0.7,0.6);</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp; // draw the resulting 
scene<BR>&nbsp;renWin-&gt;Render();<BR>//_beginthread((void(*)(void*))updateplane,STACK_SIZE,NULL);</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV><FONT face=Arial size=2>
<DIV><BR>&nbsp; // make one view 90 degrees 
fromother<BR>&nbsp;//ren1-&gt;GetActiveCamera()-&gt;Azimuth(90);<BR>&nbsp;picker 

vtkCellPicker::New();<BR>&nbsp;iren-&gt;SetPicker(picker);<BR>&nbsp;iren-&gt;SetEndPickMethod( 
&amp;annotatePick, (void *)NULL );<BR>&nbsp;iren-&gt;Start();</DIV>
<DIV>&nbsp;</DIV>
<DIV><BR>&nbsp; // Clean 
up<BR>&nbsp;ren1-&gt;Delete();<BR>&nbsp;ren2-&gt;Delete();<BR>&nbsp;ren3-&gt;Delete();<BR>&nbsp;ren4-&gt;Delete();<BR>&nbsp;renWin-&gt;Delete();<BR>&nbsp;<BR>}</FONT></DIV></BODY></HTML>