Hello Klaus, Many thanks for reporting this issue!
I tried this out on my machine (basically with the same system configuration), but so far couldn't reproduce the bug. What dataset are you using? What extent and dimensions does it have? Is it a time-resolved dataset? The assertion has been added to make sure that the data's TimeSlicedGeometry didn't change since the start of the method (line 312). Obviously there was some change, and the culprit seems to be the call to "input->Update()" (line 351). It seems that this results in an implicit call to BaseData::SetGeometry(Geometry3D), which actually replaces the BaseData's TimeSlicedGeometry. To get more clarity about what is happening here, you could set a breakpoint at BaseData::SetGeometry() and have a look at the call stack... Hopefully this should reveal why the Geometry changes, and how this is linked to the RegionGrowing functionality. It would be great if you could try this out and give us a feedback! (btw. I think your solution seems to be valid, but as you say we should make sure that we don't create other problems here!) With regards, Mathias -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Klaus Drechsler Sent: Wednesday, February 20, 2008 2:07 PM To: [email protected] Subject: [mitk-users] Bug in mitkImageMapper2D Dear all, I found a bug while trying to use the "Quite simple region grower". To reproduce the problem do the following: -Load volume -Select "quite simple region grower" functionality -Set one seed point with shift+left mousebutton -Click on "Start region grower" While debugging I found that the following assertion in mitkImageMapper2D.cpp line 371 fails: assert( input->GetTimeSlicedGeometry() == inputTimeGeometry ); The following patch fixed the problem for me: Index: mitkImageMapper2D.cpp =================================================================== --- mitkImageMapper2D.cpp (revision 6) +++ mitkImageMapper2D.cpp (working copy) @@ -368,10 +368,11 @@ Vector3D right, bottom, normal; Vector3D rightInIndex, bottomInIndex; - assert( input->GetTimeSlicedGeometry() == inputTimeGeometry ); + //assert( input->GetTimeSlicedGeometry() == inputTimeGeometry ); // take transform of input image into account - Geometry3D* inputGeometry = inputTimeGeometry->GetGeometry3D( timestep ); + //Geometry3D* inputGeometry = inputTimeGeometry->GetGeometry3D( timestep ); + Geometry3D* inputGeometry = (input->GetTimeSlicedGeometry())->GetGeometry3D( timestep ); ScalarType mmPerPixel[2]; I am using the svn version of MITK and the latest official VTK and ITK versions on Windows XP with VS2005. I would be glad, if someone can have a look at the bug and if the patch really fixes the problem without creating new ones. Regards Klaus -- GMX startet ShortView.de. Hier findest Du Leute mit Deinen Interessen! Jetzt dabei sein: http://www.shortview.de/[EMAIL PROTECTED] ------------------------------------------------------------------------ - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ mitk-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mitk-users ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ mitk-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mitk-users
