Fiole format used by Renato's point viewer(s): "pnt format ascii 1.0 comment PLY type vertices plus splat attributes element vertex 137062 property float x property float y property float z property uchar red property uchar green property uchar blue property float nx property float ny property float nz property float ex property float ey property float ez property float size property float ell property float ratio end_header -0.005537 0.004364 -0.049472 254 151 151 0.005755 -0.003451 -0.999978 0.995284 -0.096814 0.006063 0.000520 0.000604 0.669071 -0.005269 0.005518 -0.049460 255 189 189 0.025511 -0.007018 -0.999650 0.990301 -0.136437 0.026230 0.000511 0.000601 0.678726 -0.005202 0.005800 -0.049460 254 198 198 0.033275 0.019435 -0.999257 0.990371 -0.135072 0.030352 0.000501 0.000584 0.686452 -0.005293 0.003722 -0.049458 254 153 153 0.017671 -0.001915 -0.999842 0.993223 -0.114856 0.017774 0.000515 0.000601 0.669507 ... " Explanation of fields: x,y,z vertex coordinates red,green,blue point color [0,255] unsigned char nx,ny,nz vertex normal ex,ey,ez major ellipse axis direction (ignored in this viewer) size radius of disk ell major ellipse axis length (ignored in this viewer) ratio ellipse axis aspect ratio (ignored in this viewer) Thus you can easily generate points with circular disks and display them with this code. (Note it uses vertex and fragment programming and textured point sprites!)