gKit2 light
Loading...
Searching...
No Matches
draw.h File Reference
#include "mesh.h"
#include "orbiter.h"
#include "window.h"
#include "program.h"

Go to the source code of this file.

Classes

class  DrawParam

Functions

void draw (Mesh &m, const Transform &model, const Transform &view, const Transform &projection)
 dessine l'objet avec les transformations model, vue et projection.
void draw (Mesh &m, const Transform &model, const Transform &view, const Transform &projection, const GLuint texture)
 applique une texture a la surface de l'objet. ne fonctionne que si les coordonnees de textures sont fournies avec tous les sommets de l'objet.
void draw (Mesh &m, Orbiter &camera)
 dessine l'objet avec les transformations vue et projection, definies par la camera. model est la transformation identite.
void draw (Mesh &m, const Transform &model, Orbiter &camera)
 dessine l'objet avec une transformation model. les transformations vue et projection sont celles de la camera
void draw (Mesh &m, Orbiter &camera, const GLuint texture)
 dessine l'objet avec les transformations vue et projection. model est l'identite. applique une texture a la surface de l'objet. ne fonctionne que si les coordonnees de textures sont fournies avec tous les sommets de l'objet.
void draw (Mesh &m, const Transform &model, Orbiter &camera, const GLuint texture)
 dessine l'objet avec une transformation model. les transformations vue et projection sont celles de la camera. applique une texture a la surface de l'objet. ne fonctionne que si les coordonnees de textures sont fournies avec tous les sommets de l'objet.
dessine des triangles d'un objet associés à une matière. cf gestion des matieres, Mesh::groups() et les classes Materials et Material.
void draw (const TriangleGroup &group, Mesh &mesh, Orbiter &camera)
 dessine un groupe de triangles de l'objet associe a une matiere / couleur.
void draw (const TriangleGroup &group, Mesh &mesh, const Transform &model, Orbiter &camera)
 dessine un groupe de triangles de l'objet associe a une matiere / couleur.
void draw (const TriangleGroup &group, Mesh &mesh, const Transform &model, const Transform &view, const Transform &projection)
 dessine un groupe de triangles de l'objet associe a une matiere / couleur.
void draw (const TriangleGroup &group, Mesh &mesh, Orbiter &camera, const GLuint texture)
 dessine un groupe de triangles de l'objet associe a une matiere / couleur et une texture. ne fonctionne que si les coordonnees de textures sont fournies avec tous les sommets de l'objet.
void draw (const TriangleGroup &group, Mesh &mesh, const Transform &model, Orbiter &camera, const GLuint texture)
 dessine un groupe de triangles de l'objet associe a une matiere / couleur et une texture. ne fonctionne que si les coordonnees de textures sont fournies avec tous les sommets de l'objet.
void draw (const TriangleGroup &group, Mesh &mesh, const Transform &model, const Transform &view, const Transform &projection, const GLuint texture)
 dessine un groupe de triangles de l'objet associe a une matiere / couleur et une texture. ne fonctionne que si les coordonnees de textures sont fournies avec tous les sommets de l'objet.
void draw (Mesh &m, DrawParam &param)

Function Documentation

◆ draw() [1/13]

void draw ( Mesh & m,
const Transform & model,
const Transform & view,
const Transform & projection )

dessine l'objet avec les transformations model, vue et projection.

Definition at line 36 of file draw.cpp.

37{
38 DrawParam param;
39 param.model(model).view(view).projection(projection);
40 param.draw(m);
41}
void draw(Mesh &mesh)
dessine l'objet avec l'ensemble des parametres definis.
Definition draw.cpp:196
DrawParam & model(const Transform &m)
modifie la transformation model utilisee pour afficher l'objet.
Definition draw.h:82
DrawParam & view(const Transform &m)
modifie la transformation view utilisee pour afficher l'objet.
Definition draw.h:84
DrawParam & projection(const Transform &m)
modifie la transformation projection utilisee pour afficher l'objet.
Definition draw.h:86

◆ draw() [2/13]

void draw ( Mesh & m,
const Transform & model,
const Transform & view,
const Transform & projection,
const GLuint texture )

applique une texture a la surface de l'objet. ne fonctionne que si les coordonnees de textures sont fournies avec tous les sommets de l'objet.

Definition at line 11 of file draw.cpp.

12{
13 DrawParam param;
14 param.model(model).view(view).projection(projection);
15 param.texture(texture);
16 param.draw(m);
17}
DrawParam & texture(const GLuint t)
plaque une texture opaque a la surface de l'objet.
Definition draw.h:107

◆ draw() [3/13]

void draw ( Mesh & m,
Orbiter & camera )

dessine l'objet avec les transformations vue et projection, definies par la camera. model est la transformation identite.

Definition at line 53 of file draw.cpp.

54{
55 // affiche l'objet
56 draw(m, Identity(), camera);
57}
Transform Identity()
construit la transformation identite.
Definition mat.cpp:187

◆ draw() [4/13]

void draw ( Mesh & m,
const Transform & model,
Orbiter & camera )

dessine l'objet avec une transformation model. les transformations vue et projection sont celles de la camera

Definition at line 43 of file draw.cpp.

44{
45 // recupere les transformations
46 Transform view= camera.view();
47 Transform projection= camera.projection(window_width(), window_height(), 45);
48
49 // affiche l'objet
50 draw(m, model, view, projection);
51}
int window_height()
renvoie la hauteur de la fenetre de l'application.
Definition window.cpp:27
int window_width()
renvoie la largeur de la fenetre de l'application.
Definition window.cpp:23
representation d'une transformation, une matrice 4x4, organisee par ligne / row major.
Definition mat.h:21

◆ draw() [5/13]

void draw ( Mesh & m,
Orbiter & camera,
const GLuint texture )

dessine l'objet avec les transformations vue et projection. model est l'identite. applique une texture a la surface de l'objet. ne fonctionne que si les coordonnees de textures sont fournies avec tous les sommets de l'objet.

Definition at line 29 of file draw.cpp.

30{
31 draw(m, Identity(), camera, texture);
32}

◆ draw() [6/13]

void draw ( Mesh & m,
const Transform & model,
Orbiter & camera,
const GLuint texture )

dessine l'objet avec une transformation model. les transformations vue et projection sont celles de la camera. applique une texture a la surface de l'objet. ne fonctionne que si les coordonnees de textures sont fournies avec tous les sommets de l'objet.

Definition at line 19 of file draw.cpp.

20{
21 // recupere les transformations
22 Transform view= camera.view();
23 Transform projection= camera.projection(window_width(), window_height(), 45);
24
25 // affiche l'objet
26 draw(m, model, view, projection, texture);
27}

◆ draw() [7/13]

void draw ( const TriangleGroup & group,
Mesh & mesh,
Orbiter & camera )

dessine un groupe de triangles de l'objet associe a une matiere / couleur.

Definition at line 78 of file draw.cpp.

79{
80 draw(group, m, Identity(), camera);
81}

◆ draw() [8/13]

void draw ( const TriangleGroup & group,
Mesh & mesh,
const Transform & model,
Orbiter & camera )

dessine un groupe de triangles de l'objet associe a une matiere / couleur.

Definition at line 68 of file draw.cpp.

69{
70 // recupere les transformations
71 Transform view= camera.view();
72 Transform projection= camera.projection(window_width(), window_height(), 45);
73
74 // dessine les triangles
75 draw(group, m, model, view, projection);
76}

◆ draw() [9/13]

void draw ( const TriangleGroup & group,
Mesh & mesh,
const Transform & model,
const Transform & view,
const Transform & projection )

dessine un groupe de triangles de l'objet associe a une matiere / couleur.

Definition at line 61 of file draw.cpp.

62{
63 DrawParam param;
64 param.model(model).view(view).projection(projection);
65 param.draw(group, m);
66}

◆ draw() [10/13]

void draw ( const TriangleGroup & group,
Mesh & mesh,
Orbiter & camera,
const GLuint texture )

dessine un groupe de triangles de l'objet associe a une matiere / couleur et une texture. ne fonctionne que si les coordonnees de textures sont fournies avec tous les sommets de l'objet.

Definition at line 103 of file draw.cpp.

104{
105 draw(group, m, Identity(), camera, texture);
106}

◆ draw() [11/13]

void draw ( const TriangleGroup & group,
Mesh & mesh,
const Transform & model,
Orbiter & camera,
const GLuint texture )

dessine un groupe de triangles de l'objet associe a une matiere / couleur et une texture. ne fonctionne que si les coordonnees de textures sont fournies avec tous les sommets de l'objet.

Definition at line 93 of file draw.cpp.

94{
95 // recupere les transformations
96 Transform view= camera.view();
97 Transform projection= camera.projection(window_width(), window_height(), 45);
98
99 // dessine les triangles
100 draw(group, m, model, view, projection, texture);
101}

◆ draw() [12/13]

void draw ( const TriangleGroup & group,
Mesh & mesh,
const Transform & model,
const Transform & view,
const Transform & projection,
const GLuint texture )

dessine un groupe de triangles de l'objet associe a une matiere / couleur et une texture. ne fonctionne que si les coordonnees de textures sont fournies avec tous les sommets de l'objet.

Definition at line 85 of file draw.cpp.

86{
87 DrawParam param;
88 param.model(model).view(view).projection(projection);
89 param.texture(texture);
90 param.draw(group, m);
91}

◆ draw() [13/13]

void draw ( Mesh & m,
DrawParam & param )

Definition at line 109 of file draw.cpp.

110{
111 param.draw(m);
112}