void init(){ // glMatrixMode(GL_PROJECTION); // glLoadIdentity(); // gluOrtho2D(0.0, IslandWidth, IslandHeight, 0.0); // Call random point generator IslandMode = inputter(&pointMode); generateRandomPoints(&setPoints, numberofPoints); vd = generateVoronoi(&setPoints, numberofPoints); // Define elevation circlePointCt = terrainInput(elevation, biomesInformation, circleVertices, circleColors, perlinOffsets, pointMode, IslandMode); perlinArray = convertToArray(perlinOffsets); idx = VoronoiVerticesColors(vd, &voronoiPoints, &voronoiColors); // Adjust voronoi points voronoiVertices = adjustVoronoi(&voronoiPoints, &voronoiColors, elevation, circleColors, idx); // Find coords voronoiCoords = findCoords(&voronoiPoints, idx); // Find normals voronoiNormals = findNormals(voronoiVertices, idx); // Initialize shaders initShadersVAOS(); }
int main(int argc, const char * argv[]) { ifstream fstream("input.txt"); ofstream edges("edges.txt"); ofstream coords("coords.txt"); ofstream obs("obs.txt"); ofstream json("fca.json"); vector<string> input; string line; if (fstream.is_open()) { while (getline(fstream, line)) { input.push_back(line); } fstream.close(); int num_obs = (int)input.size(); unordered_set<bitset<MAX> > concepts; vector<BitObj*> extents; findConc(input, concepts, extents); vector<bitset<MAX> > relation(concepts.size()); nodeJSON(extents, json); findEdges(extents, relation, edges); linkJSON(json); findCoords(extents, coords); nodeObs(extents, obs, num_obs); //Set operations ifstream com("com.txt"); cout << "Computing operations...\n"; string line; while (getline(com, line)) { cout << '\n'; bitset<MAX> A = convInput(line.substr(2), num_obs); cout << "Input A: "; printObj(A, cout, num_obs); switch (line[0]) { case 'c': cout << "Closure of A: "; printObj(closure(extents, A).second, cout, num_obs); break; case 'b': cout << "Boundary of A: "; printObj(boundary(extents, A, num_obs).second, cout, num_obs); break; case 'i': cout << "Interior of A: "; printObj(interior(extents, A, num_obs), cout, num_obs); break; case 'd': cout << "Derived set of A: "; printObj(derived(extents, A, num_obs), cout, num_obs); break; case 's': cout << "Isolated point of A: "; printObj(isolated(extents, A, num_obs), cout, num_obs); break; } } for (BitObj *b : extents) delete b; } else cerr << "Unable to open file" << endl; return 0; }