示例#1
0
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();

}
示例#2
0
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;
}