Quantcast

vtkDelaunay2D crash depending on ProjectionPlaneMode

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

vtkDelaunay2D crash depending on ProjectionPlaneMode

jimmigoo
Hi all.

I found a crash on vtkDelaunay2D filter, using VTK 6.1.0.

This crash happened leaving the default ProjectionPlaneMode default value (VTK_DELAUNAY_XY_PLANE) and it didn't happen if I set the other ProjectionPlaneMode (VTK_BEST_FITTING_PLANE) before calling vtkDelaunay2D::Update() method.

This if the source code example I ran to detect the crash

---
   double l_dPos[3];

   vtkPoints* l_pGridPoints = vtkPoints::New();

   // first point
   l_dPos[0] = 23926.000000000000;
   l_dPos[1] = 69452.000000000000;
   l_dPos[2] = 2652.8683108524156;

   l_pGridPoints->InsertNextPoint(l_dPos[0], l_dPos[1], l_dPos[2]);

   // second point
   l_dPos[0] = 23926.000000000000;
   l_dPos[1] = 69456.000000000000;
   l_dPos[2] = 2641.0437485351772;

   l_pGridPoints->InsertNextPoint(l_dPos[0], l_dPos[1], l_dPos[2]);

   // third point
   l_dPos[0] = 23930.000000000000;
   l_dPos[1] = 69456.000000000000;
   l_dPos[2] = 2639.1668187815949;

   l_pGridPoints->InsertNextPoint(l_dPos[0], l_dPos[1], l_dPos[2]);

   // fourth point
   l_dPos[0] = 23934.000000000000;
   l_dPos[1] = 69460.000000000000;
   l_dPos[2] = 2634.7293168310453;

   l_pGridPoints->InsertNextPoint(l_dPos[0], l_dPos[1], l_dPos[2]);

   // fifth point

   l_dPos[0] = 23938.000000000000;
   l_dPos[1] = 69464.000000000000;
   l_dPos[2] = 2633.4773374108199;

   l_pGridPoints->InsertNextPoint(l_dPos[0], l_dPos[1], l_dPos[2]);

   vtkPolyData* l_pGridPolyData = vtkPolyData::New();
   l_pGridPolyData->SetPoints(l_pGridPoints);

   vtkDelaunay2D* l_pDelaunay2D = vtkDelaunay2D::New();
   l_pDelaunay2D->SetInputData(l_pGridPolyData);
   l_pDelaunay2D->Update();

-----

Could you help me to understand how to not obtain algorithm crash leaving VTK_DELAUNAY_XY_PLANE as ProjectionPlaneMode? My doubt is to obtain more increased algorithm times setting VTK_BEST_FITTING_PLANE.

I'm looking for your kind reply

Best Regards,

jimmigoo
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: vtkDelaunay2D crash depending on ProjectionPlaneMode

jimmigoo
In the attached images, how vtkDelaunay2D crashs

with the previous dataset, the crash happens inside vtkCellLinks destructor, when the vtkPolyData this->Mesh on vtkDelaunay2D object has to be destroyed.

Moreover, when "Edge is non-manifold" error is detected, the algorithm returns successfully with code 0, there is no crash at that step.

vtkCellLinks destructor

debugger call stack

vtkOutputWindow, part 1

vtkOutputWindow, part 2

I'm looking for your kind reply, if possible.

Best regards,

jimmigoo


The crash occurs also on VTK 7.1.1
Loading...