/* * Gem-graph OpenGL experiments * * Desc: OpenGL utils header * * Copyright (C) 2023 Jean Sirmai * * This file is part of Gem-graph. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ #pragma once #include #include #include void check_space_data_and_user_preferences(int x, int y, int z, int grid, int diagonal); // void do_alloc_buffers(){}; // ?!? Pourquoi ne dois-je pas déclarer cette fonction ici ? void compute_buffers_sizes(int model_space_size_x, int model_space_size_y, int model_space_size_z, long central_stars_nb, long arrows_nb, int pref_test_diagonal); long compute_space_vertex_nb(int x, int y, int z); long compute_space_lines_nb(int x, int y, int z, int pref_show_grid); // bool alloc_space_vertex (long x, long y, long z, // GLfloat *vertex_origin, GLfloat *colors_origin, // int vertex_index, int colors_index); bool alloc_space_vertex_and_colors (long x, long y, long z); void draw_a_cube_at(long u, long v, long w, long size_x, long size_y, long size_z, bool diagonals); void draw_ridges_3D (long x, long y, long z, long step_x, long step_y, long step_z); bool draw_grids_3D (long x, long y, long z, long step_x, long step_y, long step_z, int pref_show_grid); void diagonal_test(long x, long y, long z, long step_x, long step_y, long step_z);