opengl_drawer.hpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _OPENGL_DRAWER_HPP_
00021 #define _OPENGL_DRAWER_HPP_
00022
00023 #include <mesh.hpp>
00024 #include <v3.hpp>
00025
00026 namespace cpe
00027 {
00028
00029 class spring_mesh;
00030
00032 class opengl_drawer
00033 {
00034 public:
00035
00042 static void draw(const mesh& m,const std::vector<double>& normal);
00044 static void draw(const mesh& m);
00045
00046
00052 static void draw_normals(const mesh& m,const std::vector<double>& normal,const double& L_scaling=1.0);
00053
00054
00056 static void generate_texture(const unsigned int& id_texture,const std::string& filename);
00057
00058
00060 static void draw(const spring_mesh& m);
00061
00062 private:
00063
00065 static void draw_edges(const mesh& m);
00067 static void draw_per_polygon_normal(const mesh& m,const std::vector<double>& normal);
00069 static void draw_per_vertex_normal(const mesh& m,const std::vector<double>& normal);
00070
00071 };
00072 }
00073
00074 #endif