MantisBT - VTK | ||||||||||
View Issue Details | ||||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | |||||
0011102 | VTK | (No Category) | public | 2010-08-06 16:46 | 2016-08-12 09:55 | |||||
Reporter | David Doria | |||||||||
Assigned To | Dave DeMarle | |||||||||
Priority | normal | Severity | crash | Reproducibility | sometimes | |||||
Status | closed | Resolution | moved | |||||||
Platform | OS | OS Version | ||||||||
Product Version | ||||||||||
Target Version | Fixed in Version | |||||||||
Project | ||||||||||
Type | ||||||||||
Summary | 0011102: vtkDelaunay2D with some pairs of datasets and transforms crashes | |||||||||
Description | With the attached dataset and the transform defined in code below, vtkDelaunay2D crashes. With that dataset and a different transform all is well. With that transform and a different dataset all is well. I'm sure it has something to do with the degeneracy of the dataset, but there should be a check for that and an error thrown rather than a crash. | |||||||||
Steps To Reproduce | ||||||||||
Additional Information | It looks like it happens in vtkDelaunay2D::CheckEdge. #include <vtkPolyData.h> #include <vtkImageData.h> #include <vtkSmartPointer.h> #include <vtkMath.h> #include <vtkPlane.h> #include <vtkLandmarkTransform.h> #include <vtkTransformFilter.h> #include <vtkDelaunay2D.h> #include <vtkPointSource.h> #include <vtkXMLPolyDataReader.h> #include <vtkPlaneSource.h> #include <vtkXMLPolyDataWriter.h> int main() { vtkSmartPointer<vtkXMLPolyDataReader> reader = vtkSmartPointer<vtkXMLPolyDataReader>::New(); reader->SetFileName("../polydata.vtp"); reader->Update(); double sourceOrigin[3] = {-.5, .5, 0}; double sourceP1[3] = {.5, .5, 0}; double sourceP2[3] = {-.5, .5, -1}; vtkSmartPointer<vtkPoints> sourcePoints = vtkSmartPointer<vtkPoints>::New(); sourcePoints->InsertNextPoint(sourceOrigin); sourcePoints->InsertNextPoint(sourceP1); sourcePoints->InsertNextPoint(sourceP2); vtkSmartPointer<vtkPoints> targetPoints = vtkSmartPointer<vtkPoints>::New(); targetPoints->InsertNextPoint(0,0,0); targetPoints->InsertNextPoint(0,1,0); targetPoints->InsertNextPoint(1,0,0); vtkSmartPointer<vtkLandmarkTransform> landmarkTransform = vtkSmartPointer<vtkLandmarkTransform>::New(); landmarkTransform->SetSourceLandmarks(sourcePoints); landmarkTransform->SetTargetLandmarks(targetPoints); landmarkTransform->SetModeToRigidBody(); landmarkTransform->Update(); vtkSmartPointer<vtkPolyData> polydata = vtkSmartPointer<vtkPolyData>::New(); polydata->SetPoints ( reader->GetOutput()->GetPoints() ); vtkSmartPointer<vtkDelaunay2D> delaunay = vtkSmartPointer<vtkDelaunay2D>::New(); delaunay->SetTransform(landmarkTransform); delaunay->SetInput(polydata); delaunay->Update(); return EXIT_SUCCESS; } | |||||||||
Tags | No tags attached. | |||||||||
Relationships |
| |||||||||
Attached Files | ![]() https://www.vtk.org/Bug/file/8304/polydata.vtp | |||||||||
Issue History | ||||||||||
Date Modified | Username | Field | Change | |||||||
2010-08-06 16:46 | David Doria | New Issue | ||||||||
2010-08-06 16:46 | David Doria | File Added: polydata.vtp | ||||||||
2011-05-10 20:41 | David Gobbi | Relationship added | related to 0012178 | |||||||
2011-06-16 13:11 | Zack Galbreath | Category | => (No Category) | |||||||
2013-07-22 18:20 | Dave DeMarle | Note Added: 0031195 | ||||||||
2013-07-22 18:20 | Dave DeMarle | Status | backlog => expired | |||||||
2013-07-22 18:20 | Dave DeMarle | Assigned To | => Dave DeMarle | |||||||
2016-08-12 09:55 | Kitware Robot | Note Added: 0037190 | ||||||||
2016-08-12 09:55 | Kitware Robot | Status | expired => closed | |||||||
2016-08-12 09:55 | Kitware Robot | Resolution | open => moved |
Notes | |||||
|
|||||
|
|
||||
|
|||||
|
|