[Insight-users] Re: Iterative use of DeformableMeshFilter3D

Th. Boettger t.boettger@dkfz-heidelberg.de
Tue, 19 Nov 2002 10:51:05 +0100


This is a multi-part message in MIME format.
--------------020709040405060902080404
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Hi Ting,

I'm not sure what you meant. Right now I initialize the filter and call 
the Update() method. But this can be done only once. All iterations are 
computed. How do I execute just one iteration and return from the 
filters execution?

I saw the generatedata method. This is where you iterate until m_Step 
equals m_StepThreshold. When this is true you exit the deformation loop 
and call computeOutput. Then the method returns. By now all the 
iterations are already computed.

When I try to call Update() the second time to repeat the same number of 
steps the filter crashes with the following stack trace I attached at 
the end of the file. Is it allowed to call update a second time and when 
yes, why is the program crashing?

Bye
Thomas

-- 
Dipl.-Inform. Thomas Boettger
Deutsches Krebsforschungszentrum         (German Cancer Research Center)
Div. Medical and Biological Informatics H0100    Tel: (+49) 6221-42 2328
Im Neuenheimer Feld 280                          Fax: (+49) 6221-42 2345
D-69120 Heidelberg                            e-mail: t.boettger@dkfz.de
Germany                      http://www.dkfz.de/mbi/people/thomasb.shtml


--------------020709040405060902080404
Content-Type: text/plain;
 name="callstack.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="callstack.txt"

 	itk.exe!itk::LightObject::Print(std::basic_ostream<char,std::char_traits<char> > & os={...})  Line 99 + 0x17	C++
 	itk.exe!itk::SmartPointer<itk::VectorContainer<unsigned long,itk::Point<double,3> > >::Print(std::basic_ostream<char,std::char_traits<char> > & os={...})  Line 140	C++
 	itk.exe!itk::operator<<(std::basic_ostream<char,std::char_traits<char> > & os={...}, itk::SmartPointer<itk::VectorContainer<unsigned long,itk::Point<double,3> > > p={...})  Line 163	C++
 	itk.exe!itk::PointSet<double,3,itk::DefaultStaticMeshTraits<double,3,3,double,double,double> >::GetPoints()  Line 74 + 0x163	C++
 	itk.exe!itk::DeformableMesh3DFilter<itk::Mesh<double,3,itk::DefaultStaticMeshTraits<double,3,3,double,double,double> >,itk::Mesh<double,3,itk::DefaultStaticMeshTraits<double,3,3,double,double,double> > >::ComputeOutput()  Line 426 + 0x8	C++
 	itk.exe!itk::DeformableMesh3DFilter<itk::Mesh<double,3,itk::DefaultStaticMeshTraits<double,3,3,double,double,double> >,itk::Mesh<double,3,itk::DefaultStaticMeshTraits<double,3,3,double,double,double> > >::GenerateData()  Line 481	C++
 	itk.exe!itk::ProcessObject::UpdateOutputData(itk::DataObject * __formal=0x010681f0)  Line 822	C++
 	itk.exe!itk::DataObject::UpdateOutputData()  Line 403 + 0x6	C++
>	itk.exe!MeshFilterDemo::runDeformableMesh3DFilter()  Line 277 + 0x24	C++
 	itk.exe!MeshDeformationMainWindow::showDeformableMesh()  Line 115 + 0xf	C++
 	itk.exe!MeshDeformationMainWindow::qt_invoke(int _id=44, QUObject * _o=0x0012f968)  Line 253 + 0x8	C++
 	qt-mt304.dll!39d552da() 	
 	qt-mt304.dll!39d55289() 	
 	itk.exe!ITKDemoGuiInterface::computeDeformableModel()  Line 290 + 0x25	C++
 	itk.exe!ITKDemoGuiInterface::computeMeshModelButton_clicked()  Line 29	C++
 	itk.exe!ITKDemoGuiInterface::qt_invoke(int _id=45, QUObject * _o=0x0012f9fc)  Line 379 + 0x10	C++
 	itk.exe!ITKDemoGui::qt_invoke(int _id=45, QUObject * _o=0x0012f9fc)  Line 77	C++
 	qt-mt304.dll!39d5531c() 	
 	qt-mt304.dll!39d55289() 	
 	qt-mt304.dll!39ead874() 	
 	qt-mt304.dll!39d27886() 	
 	qt-mt304.dll!39d27500() 	
 	qt-mt304.dll!39d059e4() 	
 	qt-mt304.dll!39d095d7() 	
 	user32.dll!77d43a5f() 	
 	user32.dll!77d43b2e() 	
 	user32.dll!77d43d6a() 	
 	user32.dll!77d43dd0() 	
 	qt-mt304.dll!39d28435() 	
 	qt-mt304.dll!39d08d9e() 	
 	itk.exe!main(int argc=3, char * * argv=0x0101fec0)  Line 91 + 0x32	C++
 	itk.exe!mainCRTStartup()  Line 400 + 0xe	C
 	kernel32.dll!77e7eb69() 	

--------------020709040405060902080404--