#include main() { FILE *fopen(), *fp; int polygon_id, vertice_id, vlist_id, object_polygon_count, object_vertice_count, object_polygon_vertice_count[41], object_vertice_list[41] [30]; float object_vertice_x[41], object_vertice_y[41], object_vertice_z[41]; object_polygon_count = 3; object_vertice_count = 8; object_vertice_x [1] = -4; object_vertice_y [1] = 3; object_vertice_z [1] = 5; object_vertice_x [2] = 16; object_vertice_y [2] = 3; object_vertice_z [2] = 5; object_vertice_x [3] = 16; object_vertice_y [3] = 3; object_vertice_z [3] = -4; object_vertice_x [4] = -4; object_vertice_y [4] = 3; object_vertice_z [4] = -4; object_vertice_x [5] = -4; object_vertice_y [5] = 40; object_vertice_z [5] = 5; object_vertice_x [6] = 16; object_vertice_y [6] = 40; object_vertice_z [6] = 5; object_vertice_x [7] = 16; object_vertice_y [7] = 40; object_vertice_z [7] = -4; object_vertice_x [8] = -4; object_vertice_y [8] = 40; object_vertice_z [8] = -4; object_polygon_vertice_count [1] = 5; object_vertice_list [1] [1] = 1; object_vertice_list [1] [2] = 2; object_vertice_list [1] [3] = 3; object_vertice_list [1] [4] = 4; object_vertice_list [1] [5] = 1; object_polygon_vertice_count [2] = 5; object_vertice_list [2] [1] = 1; object_vertice_list [2] [2] = 5; object_vertice_list [2] [3] = 6; object_vertice_list [2] [4] = 2; object_vertice_list [2] [5] = 1; object_polygon_vertice_count [3] = 5; object_vertice_list [3] [1] = 2; object_vertice_list [3] [2] = 6; object_vertice_list [3] [3] = 7; object_vertice_list [3] [4] = 3; object_vertice_list [3] [5] = 2; if ((fp = fopen("walls.obj","w")) == 0) { printf("Couldn't open walls.obj file for write\n"); exit(); } fprintf(fp,"1 1 3 %d %d", object_polygon_count, object_vertice_count); for (vertice_id=1; vertice_id <= object_vertice_count; vertice_id++) { fprintf(fp," %f %f %f", object_vertice_x [vertice_id], object_vertice_y [vertice_id], object_vertice_z [vertice_id]); } for (polygon_id=1; polygon_id <= object_polygon_count; polygon_id++) { fprintf(fp," %d", object_polygon_vertice_count [polygon_id]); for (vlist_id=1; vlist_id <= object_polygon_vertice_count [polygon_id]; vlist_id++) { fprintf(fp," %d", object_vertice_list [polygon_id] [vlist_id]); } } printf("walls.obj written\n"); fclose(fp); printf("closed\n"); }