<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2600.0" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#a6caf0>
<DIV>
<DIV><FONT face=Arial>Dear all: </FONT></DIV>
<DIV><FONT face=Arial></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I want to do a 
surface matching using 'vtkiterativeclosestpointtransformation' to do a surface 
matching </FONT></DIV>
<DIV><FONT face=Arial>of a ultrasound surface with the MR surface. The result is 
a bit difference with what I expected. I want to know</FONT></DIV>
<DIV><FONT face=Arial>if there is some hint on using this method? I have read 
the document on vtk page, There is very little introduction.</FONT></DIV>
<DIV><FONT face=Arial>can you </FONT><FONT face=Arial>give me some advice? Thank 
you very much. </FONT></DIV>
<DIV><FONT face=Arial></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial>Here is my tcl code:</FONT></DIV>
<DIV><FONT face=Arial size=2>package require vtk<BR>package require 
vtkinteraction</FONT></DIV>
<DIV><FONT face=Arial size=2>vtkRenderWindow renWin</FONT></DIV>
<DIV><FONT face=Arial size=2>vtkRenderWindowInteractor 
iren<BR>&nbsp;&nbsp;&nbsp; iren SetRenderWindow renWin</FONT></DIV>
<DIV><FONT face=Arial size=2>vtkRenderer Source <BR>vtkRenderer Target<BR>Source 
SetViewport 0 0 0.33 1<BR>Target SetViewport .33 0 0.66 1</FONT></DIV>
<DIV><FONT face=Arial size=2>renWin AddRenderer Source<BR>renWin AddRenderer 
Target<BR>vtkPolyDataReader tRead<BR>vtkPolyDataReader sRead<BR>tRead 
SetFileName "e:/mr.vtk"<BR>sRead SetFileName "e:/us.vtk"<BR>vtkPolyDataMapper 
sMapper<BR>vtkPolyDataMapper tMapper<BR>sMapper SetInput [sRead 
GetOutput]<BR>tMapper SetInput [tRead GetOutput]</FONT></DIV>
<DIV><FONT face=Arial size=2>vtkActor sActor <BR>vtkActor tActor<BR>sActor 
SetMapper sMapper<BR>tActor SetMapper tMapper</FONT></DIV>
<DIV><FONT face=Arial size=2>Source AddActor sActor<BR>Target AddActor tActor 
<BR>vtkIterativeClosestPointTransform icp<BR>icp SetSource [sRead 
GetOutput]<BR>icp SetTarget [tRead GetOutput]<BR>icp SetCheckMeanDistance 
1<BR>icp SetMaximumMeanDistance 0.01<BR>icp SetMaximumNumberOfIterations 
400<BR>icp SetMaximumNumberOfLandmarks 500<BR>[icp GetLandmarkTransform] 
SetModeToRigidBody&nbsp; </FONT></DIV>
<DIV><FONT face=Arial size=2>vtkTransformPolyDataFilter filter<BR>filter 
SetInput [sRead GetOutput]<BR>filter SetTransform icp</FONT></DIV>
<DIV><FONT face=Arial size=2>vtkActor sout<BR>vtkPolyDataMapper 
soutMapper<BR>soutMapper SetInput [filter GetOutput]<BR>sout SetMapper 
soutMapper</FONT></DIV>
<DIV><FONT face=Arial size=2>vtkRenderer soRenderer<BR>soRenderer SetViewport 
0.66 0 1 1<BR>soRenderer AddActor sout<BR>renWin AddRenderer 
soRenderer</FONT></DIV>
<DIV><FONT face=Arial size=2>renWin SetSize 900 300<BR>renWin 
Render</FONT></DIV>
<DIV><FONT face=Arial size=2><BR>&nbsp;</DIV></FONT>
<DIV><FONT face=Arial>regards,</FONT></DIV>
<DIV><FONT face=Arial>zhang zhijun</FONT></DIV></DIV></BODY></HTML>