[vtkusers] Multiple vtkPolygons in a vtkPolyData
Nick Patterson
pattersonnp at gmail.com
Wed Oct 29 07:11:33 EDT 2014
Dear VTK Users,
I have been having some trouble with handling polygons in VTK and hoped that someone can offer some guidance.
I wish to do the following:-
1) Read some contours (structures) from a DICOM file - these are essentially polygons drawn on 2D slices. ( I have completed this task and have the ability to extract the x,y,z point of each vertex from a DICOM RTStruct) There are approximately 250 polygons.
2) I want to add these coordinate positions to create a vtkPolygon
3) I want add each vtkPolygon object to a vtkPolyData
4) Render the polygons. ( I can probably deal with this ).
Up until now I have been using the http://www.itk.org/Wiki/VTK/Examples/Cxx/GeometricObjects/Polygon example and trying to adapt it.
Can anyone advise how I would modify this segment of code (taken straight from the code in the link above) so that it would be generic that I can add multiple independent polygons (in the example I am working with there are approximately 250 polygons) to the vtkPolyData.
vtkSmartPointer<vtkPoints> points =
vtkSmartPointer<vtkPoints>::New();
points->InsertNextPoint(0.0, 0.0, 0.0);
points->InsertNextPoint(1.0, 0.0, 0.0);
points->InsertNextPoint(1.0, 1.0, 0.0);
points->InsertNextPoint(0.0, 1.0, 0.0);
// Create the polygon
vtkSmartPointer<vtkPolygon> polygon =
vtkSmartPointer<vtkPolygon>::New();
polygon->GetPointIds()->SetNumberOfIds(4); //make a quad
polygon->GetPointIds()->SetId(0, 0);
polygon->GetPointIds()->SetId(1, 1);
polygon->GetPointIds()->SetId(2, 2);
polygon->GetPointIds()->SetId(3, 3);
// Add the polygon to a list of polygons
vtkSmartPointer<vtkCellArray> polygons =
vtkSmartPointer<vtkCellArray>::New();
polygons->InsertNextCell(polygon);
// Create a PolyData
vtkSmartPointer<vtkPolyData> polygonPolyData =
vtkSmartPointer<vtkPolyData>::New();
polygonPolyData->SetPoints(points);
polygonPolyData->SetPolys(polygons);
I hope my problem is clear, but am happy to clarify if you think you are able to offer guidance which would be much appreciated.
Regards, Nick.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/vtkusers/attachments/20141029/72752810/attachment.html>
More information about the vtkusers
mailing list