<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2800.1170" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>
<DIV><FONT face=Arial size=2>Hi, All</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Did anyone face the trouble to add pick 
function&nbsp;in&nbsp;vtkAssembly?</FONT></DIV><FONT face=Arial size=2>
<DIV><BR>I try to build an application to build some assembly objects, and when 
I use mouse to pick one object<BR>inside the assembly , the box of this object 
will be displayed.<BR></DIV>
<DIV>I choose vtkPropPicker as my picker in my application because it is 
fast.<BR>But when i try it with MFC programming, it turns out crash 
unpredictable.<BR></DIV>
<DIV>The error message is like this:&nbsp; Invalid Address specified to 
RtlValidateHeap( 01A60000, 032E5FF0 )<BR>I tried to track this bug in my 
programs, I found one break point at:&nbsp; 
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
cullPicker-&gt;Delete(); (in vtkRenderer.cxx)<BR>&nbsp;one break point follows 
this is 
at:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
this-&gt;Actors-&gt;Delete(); (in vtkPicker.cxx). <BR>The final break point is 
at vtkCollection method DeleteElement(vtkCollectionElement 
*e):<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
delete e;<BR>because e's address is 0x032e6010, it beyonds ( 01A60000, 032E5FF0 
). </FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>I also found some suspicous codes in 
vtkPicker.cxx<BR>In the method: int vtkPicker::Pick(float selectionX, float 
selectionY, float selectionZ, vtkRenderer *renderer) <BR>There is a statement: 
this-&gt;Prop3Ds-&gt;AddItem((vtkProp3D *)prop);<BR>If prop is an assembly, one 
same assembly can be added several times after I picked something in assembly. 
<BR>Is that reasonable?</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>By the way, I have tested my application without 
any assembly. It works fine.</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>I feel&nbsp; frustrating with this bug in my 
application. Any hint will be helpful.</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Regards.</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Derong <BR></FONT></DIV></FONT></DIV></BODY></HTML>