Export mesh to .obj

Much thanks for your help. Here is my solution:

		@Override
	public void exportSelectedData(File outputFile, Vector3f[] vertices, Integer[] indices) throws IOException {
		FileWriter writer = new FileWriter(outputFile);
		for (int i = 0; i < indices.length; i += 3) {
			Vector3f v1 = new Vector3f(vertices[i]);
			Vector3f v2 = new Vector3f(vertices[i + 1]);
			Vector3f v3 = new Vector3f(vertices[i + 2]);

			Vector3f normal = computeNormal(v1, v2, v3);

			writer.write(String.format("v %f %f %f\n", v1.x, v1.y, v1.z));
			writer.write(String.format("v %f %f %f\n", v2.x, v2.y, v2.z));
			writer.write(String.format("v %f %f %f\n", v3.x, v3.y, v3.z));

			writer.write(String.format("vn %f %f %f\n", normal.x, normal.y, normal.z));

			int v = i + 1, vn = (i / 3) + 1;
			writer.write(String.format("f %d//%d %d//%d %d//%d\n", v, vn, v + 1, vn, v + 2, vn));
		}
		writer.close();
	}
5 Likes