Valerie,<br>you have to create a vtkpolyData instance. I have a function that reads a XYZ ASCII file (whose name you pass as argument) and creates the polydata (actually, inside the polydata, instances od vtkPoints and vtkCellArray are used). Once you have the polydata, youŽll proceed with visualization using the vtkPolyData -&gt; vtkPolyDataMapper -&gt; vtkActor pipeline
<br><br>Here is the function.<br><br>&nbsp;&nbsp; Luca<br><br><br>vtkPolyData *xyzreader (char *name) {<br>&nbsp;&nbsp;&nbsp;&nbsp;  <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; double x[3];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FILE *f;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char LINE[256];<br>&nbsp;&nbsp;&nbsp;&nbsp;  <br>&nbsp;&nbsp;&nbsp;&nbsp;  <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ( (f = fopen(name, &quot;r&quot;)) == NULL ) {
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fprintf (stderr, &quot;Error while opening file %s!\n&quot;, name);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return NULL;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; vtkPoints *points = vtkPoints::New();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; vtkPolyData *poly = vtkPolyData::New();<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; vtkCellArray *conn = vtkCellArray::New();<br>&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Create geometry of point cloud<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while ( fgets(LINE, 256, f) != NULL ) {<br>&nbsp;&nbsp;&nbsp;&nbsp;  <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (sscanf(LINE, &quot;%lf %lf %lf&quot;, &amp;x[0], &amp;x[1], &amp;x[2]) != 3) {
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fprintf (stderr, &quot;I/O Error!\n&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fclose (f);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return NULL;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; points-&gt;InsertNextPoint(x);<br>&nbsp;&nbsp;&nbsp;&nbsp; } // End of while loop<br>&nbsp;&nbsp;  <br>&nbsp;&nbsp; &nbsp; // Create topology of point cloud. This is necessary!
<br>&nbsp;&nbsp;&nbsp;&nbsp; for (int i = 0; i &lt; points-&gt;GetNumberOfPoints(); i++)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; conn-&gt;InsertNextCell(1, &amp;i);<br>&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp; poly-&gt;SetPoints(points);<br>&nbsp;&nbsp;&nbsp;&nbsp; poly-&gt;SetVerts(conn);<br>&nbsp;&nbsp;&nbsp;&nbsp; points-&gt;Delete();
<br>&nbsp;&nbsp;&nbsp;&nbsp; conn-&gt;Delete();<br>&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <br>&nbsp;&nbsp;&nbsp;&nbsp; fclose (f);<br>&nbsp;&nbsp; &nbsp; return poly;<br>&nbsp;}<br>