Следующее является упрощенной версией фрагмента кода PLY Writer, который вы можете изменить в соответствии со своими потребностями.
fos = new FileOutputStream(file);
Writer writer= new OutputStreamWriter(fos, "UTF8");
writer.write("ply\n");
writer.write("format ");
writer.write(isBinary() ? "binary_big_endian" : "ascii");
writer.write(" 1.0\n");
BufferedReader r=new BufferedReader(new StringReader(comment));
String commentLine;
while ((commentLine=r.readLine())!=null) {
writer.write("comment ");
writer.write(commentLine);
writer.write('\n');
}
// lat,lon,alt as example
writer.write("element vertex 3\n");
writer.write("property double x\n");
writer.write("property double y\n");
writer.write("property double z\n");
//writer.write("element face 0\n"); // no element like faces
//writer.write("property list uchar int vertex_indices\n");
writer.write("end_header\n");
writer.flush();
DataOutputStream dos=new DataOutputStream(fos);
dos.writeDouble(x);
dos.writeDouble(y);
dos.writeDouble(z);
dos.close();
}