<P>&nbsp;Hi prabhu/Tim</P>
<P>Thanks for the response and it was very helpful. I have one more question to <B>all the vtk users.</B></P>
<P>I am using stl reader and<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>vtkcelllocator to get a<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>line intersection point and its cellID. After this I tried to compute all the points that lie within radius of the intersection point.</P>
<P class=MsoNormal>To compute the points within radius I am using: </P>
<P class=MsoNormal>pointLocator-&gt;FindPointsWithinRadius(radius, ptline, res);</P>
<P class=MsoNormal><B>Question is:</B> As I looked at the normal of all the points within radius I discovered that most of the points are from inside surface, where as my intersection point is at outside surface. How to compute all the points that lie only on the outer side of the surface?</P>
<P class=MsoNormal>The code I am using for this is :</P>
<P class=MsoNormal>vtkIdList *res = vtkIdList::New();<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></P>
<P class=MsoNormal><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>float radius = 2.0;<o:p></o:p></P>
<P class=MsoNormal><SPAN style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-tab-count: 1">&nbsp; </SPAN>vtkPointLocator *pointLocator = vtkPointLocator::New();<o:p></o:p></P>
<P class=MsoNormal><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>pointLocator-&gt;SetDataSet(stlreader-&gt;GetOutput());<o:p></o:p></P>
<P class=MsoNormal><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>pointLocator-&gt;BuildLocator();<o:p></o:p></P>
<P class=MsoNormal><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>pointLocator-&gt;FindPointsWithinRadius(radius, ptline, res);<o:p></o:p></P>
<P class=MsoNormal><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>pointLocator-&gt;Update();<o:p></o:p></P>
<P class=MsoNormal>&nbsp;<SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>vtkIdType ptId;<o:p></o:p></P>
<P class=MsoNormal><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>float *pt;<o:p></o:p></P>
<P class=MsoNormal><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>int num_pts;<o:p></o:p></P>
<P class=MsoNormal><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>num_pts = res-&gt;GetNumberOfIds();<o:p></o:p></P>
<P class=MsoNormal>&nbsp;<SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>for (int i=0; i &lt; num_pts; i++) <o:p></o:p></P>
<P class=MsoNormal><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;</SPAN>{<o:p></o:p></P>
<P class=MsoNormal><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN><SPAN style="mso-spacerun: yes">&nbsp;&nbsp;</SPAN>ptId = res-&gt;GetId(i);</P>
<P class=MsoNormal><SPAN style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>pt = poly-&gt;GetPoint(ptId);<o:p></o:p></P>
<P class=MsoNormal>&nbsp;<SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>}</P>
<P class=MsoNormal>Thanks in advance</P>
<P class=MsoNormal>Siddu</P>
<P class=MsoNormal>&nbsp;<o:p></o:p></P><p><img src="http://us.i1.yimg.com/us.yimg.com/i/icon/auto.gif" height=17 width=28>
Post your ad on Yahoo! India Autos.
Check out the used <a href="http://in.classifieds.yahoo.com/display/autos?ct_hft=ct_hft=search/list&leve
l=0:Car&mtype=86308693:Maruti" target="_blank">Maruti</a>, <a href="http://in.classifieds.yahoo.com/display/autos?ct_hft=ct_hft=search/list&lev
el=0:Car&mtype=86308611:Fiat" target="_blank">Fiat</a> and <a href="http://in.classifieds.yahoo.com/display/autos?ct_hft=ct_hft=search/list&leve
l=0:Car&mtype=86308612:Ford" target="_blank">Ford</a> models on sale now.