+ HYDROData_Tool::SetTriangulationStatus(HYDROData_Tool::Running);
+
+ Handle(TDataStd_Integer) anAttr = TDataStd_Integer::Set( myLab.FindChild( DataTag_Delaunay ), key );
+ anAttr->SetID(TDataStd_Integer::GetID());
+ DEBTRACE("GetVtkDelaunay2D init " << this << " " << key);
+ vtkPoints *points = vtkPoints::New();
+ points->Allocate(aCoordsArray->Upper() +1);
+ for (int i = aCoordsArray->Lower(), n = aCoordsArray->Upper(); i <= n;)
+ {
+ if (i + 3 > n + 1)
+ break;
+ double x = aCoordsArray->Value(i++);
+ double y = aCoordsArray->Value(i++);
+ double z = aCoordsArray->Value(i++);
+ vtkIdType index = points->InsertNextPoint(x, y, z); // same index than in GetQuadtreeNodes
+ //DEBTRACE(" " << index);
+ }
+ vtkPolyData* profile = vtkPolyData::New();
+ profile->SetPoints(points);
+ DEBTRACE("Number of Points: "<< points->GetNumberOfPoints());
+
+ vtkDelaunay2D* delaunay2D = vtkDelaunay2D::New();
+ delaunay2D->SetInputData(profile);
+ delaunay2D->Update();
+ vtkPolyData* data = delaunay2D->GetOutput();
+ data->BuildLinks();
+ myDelaunay2D[key] = data;
+
+ HYDROData_Tool::SetTriangulationStatus(HYDROData_Tool::Finished);
+
+ return data;