<div dir="auto">You are right. The data files I was given was bad. Thanks for going through the trouble,</div><div class="gmail_extra"><br><div class="gmail_quote">On 21 Oct 2017 12:41 a.m., "kenichiro yoshimi" <<a href="mailto:rccm.kyoshimi@gmail.com">rccm.kyoshimi@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi<br>
<br>
I tested your code with the following input files as a trial, however<br>
the problem didn't occur.<br>
---indexFile---<br>
3<br>
3<br>
---------------<br>
---pointFile---<br>
0.0 0.0 0.0<br>
0.0 1.0 0.0<br>
0.0 2.0 0.0<br>
1.0 0.0 0.0<br>
1.0 1.0 0.0<br>
1.0 2.0 0.0<br>
---------------<br>
<br>
I think you need to firstly check the validity of the input file format.<br>
<br>
Thanks a lot<br>
<br>
2017-10-21 8:07 GMT+09:00 Elvis Chen <<a href="mailto:elvis.chen@gmail.com">elvis.chen@gmail.com</a>>:<br>
> hi all,<br>
><br>
> I am working on a 3D surface reconstruction problem.  Think of a 3D laser<br>
> scanner, where I have multiple sets of 3D points (1 set per laser scan<br>
> line).  I would like to visualize them as a set of polylines, 1 polyline per<br>
> scan line.<br>
><br>
> I wrote the following code to read these data from 2 files. One file is a<br>
> set of 3D points, the other is a text file indicating the number of points<br>
> per scan line.  I then create 1 polyline per scan line, and append them<br>
> together using vtkappendpolydata. I then wrote the results into a .vtk file.<br>
><br>
> However, visualizing the .vtk file suggests that the beginning of the nth<br>
> scan line is connected to the end of the (n-1)th scan line.  How do I create<br>
> a set of the disconnected polylines?<br>
><br>
> any help is very much appreciated,<br>
><br>
> My codes are as following:<br>
><br>
> #include <vtkSmartPointer.h><br>
> #include <vtkAppendPolyData.h><br>
> #include <vtkPoints.h><br>
> #include <vtkPolyLine.h><br>
> #include <vtkCellArray.h><br>
> #include <vtkCellData.h><br>
> #include <vtkPolyData.h><br>
> #include <vtkPolyDataWriter.h><br>
><br>
> int main ( int argc, char *argv[])<br>
>   {<br>
><br>
>   ifstream indexFile(argv[1]);<br>
>   ifstream pointFile(argv[2]);<br>
>   int num;<br>
>   double x, y, z;<br>
>   vtkSmartPointer< vtkAppendPolyData > append =<br>
>     vtkSmartPointer< vtkAppendPolyData >::New();<br>
><br>
>   while (indexFile >> num)<br>
>     {<br>
>     vtkSmartPointer< vtkPoints > points =<br>
>       vtkSmartPointer< vtkPoints >::New();<br>
>     vtkSmartPointer< vtkPolyLine > polyline =<br>
>       vtkSmartPointer< vtkPolyLine >::New();<br>
><br>
>     polyline->GetPointIds()-><wbr>SetNumberOfIds(num);<br>
>     for (unsigned int i = 0; i < (unsigned int)num; i++)<br>
>       {<br>
>       pointFile >> x >> y >> z;<br>
>       points->InsertNextPoint(x, y, z);<br>
>       polyline->GetPointIds()-><wbr>SetId(i, i);<br>
>       }<br>
><br>
>     vtkSmartPointer< vtkCellArray > cells =<br>
>       vtkSmartPointer< vtkCellArray >::New();<br>
>     cells->InsertNextCell(<wbr>polyline);<br>
>     vtkSmartPointer< vtkPolyData > polyData =<br>
>       vtkSmartPointer< vtkPolyData >::New();<br>
>     polyData->SetPoints(points);<br>
>     polyData->SetLines(cells);<br>
>     polyData->Modified();<br>
><br>
>     append->AddInputData(polyData)<wbr>;<br>
>     append->Modified();<br>
>     }<br>
>   indexFile.close();<br>
>   pointFile.close();<br>
><br>
>   vtkSmartPointer< vtkPolyDataWriter > writer =<br>
>     vtkSmartPointer< vtkPolyDataWriter >::New();<br>
>   writer->SetFileName("test.vtk"<wbr>);<br>
>   writer->SetInputConnection(<wbr>append->GetOutputPort());<br>
>   writer->Write();<br>
><br>
><br>
>   return (0);<br>
>   }<br>
><br>
> ______________________________<wbr>_________________<br>
> Powered by <a href="http://www.kitware.com" rel="noreferrer" target="_blank">www.kitware.com</a><br>
><br>
> Visit other Kitware open-source projects at<br>
> <a href="http://www.kitware.com/opensource/opensource.html" rel="noreferrer" target="_blank">http://www.kitware.com/<wbr>opensource/opensource.html</a><br>
><br>
> Please keep messages on-topic and check the VTK FAQ at:<br>
> <a href="http://www.vtk.org/Wiki/VTK_FAQ" rel="noreferrer" target="_blank">http://www.vtk.org/Wiki/VTK_<wbr>FAQ</a><br>
><br>
> Search the list archives at: <a href="http://markmail.org/search/?q=vtkusers" rel="noreferrer" target="_blank">http://markmail.org/search/?q=<wbr>vtkusers</a><br>
><br>
> Follow this link to subscribe/unsubscribe:<br>
> <a href="http://public.kitware.com/mailman/listinfo/vtkusers" rel="noreferrer" target="_blank">http://public.kitware.com/<wbr>mailman/listinfo/vtkusers</a><br>
><br>
</blockquote></div></div>