Univers Virtuels. OpenGL : Modélisation / Visualisation. Alexis NEDELEC. Centre Européen de Réalité Virtuelle Ecole Nationale d Ingénieurs de Brest
|
|
|
- Nigel Cain
- 10 years ago
- Views:
Transcription
1 Informatique S9 module REV Univers Virtuels OpenGL : Modélisation / Visualisation Alexis NEDELEC Centre Européen de Réalité Virtuelle Ecole Nationale d Ingénieurs de Brest enib c 2012 [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
2 Introduction Processus de visualisation Univers réel 1 Positionner l appareil photo 2 Arranger les éléments d une scène à photographier 3 Choisir la focale de l appareil photo 4 Choisir la taille de la photographie au développement Univers virtuel 1 modélisation (Model) : création de scène 2 visualisation (View) : position de caméra 3 projection (Projection) : réglage de visualisation 4 affichage (Viewport) : taille de l image résultante [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
3 Introduction Processus de visualisation en OpenGL Univers virtuel : étapes de transformation 1 placer la caméra virtuelle : glulookat() 2 composer une scène virtuelle : transformer les objets : gltranslatef(), glrotatef(), glscalef()... à créer : glbegin()... glend(), glutwirecube(1)... 3 choisir une projection : glortho(), glperspective(), glfrustrum() 4 choisir les caractéristiques de l image : glviewport() [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
4 Introduction Processus de visualisation en OpenGL Pipeline graphique Matrices de transformations 1 modélisation-visualisation : glmatrixmode(gl MODELVIEW) 2 projection : glmatrixmode(gl PROJECTION) 3 fenêtrage : glviewport(x,y,w,h) 4 volume à visualiser : gldepthrange(near,far) [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
5 Transformations Coordonnées et matrice homogène 16 coefficients de matrice x M 11 M 12 M 13 M 14 x y z = M 21 M 22 M 23 M 24 y M 31 M 32 M 33 M 34 z w M 41 M 42 M 43 M 44 w Composition de transformations [P ] : point de l espace, [P ] T transposée de [P ] [M] : matrice homogène, [M] T : transposée de [M] [P ] : résultat des transformations successives i (1 i n), [P ] = [M n ]... [M i ]... [M 1 ][P ] [P ] = [P ] T [M 1 ] T... [M i ] T... [M n ] T [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
6 Transformations Matrices de transformations Modélisation-Visualisation : glmatrixmode(gl MODELVIEW) x eye x obs x obs y eye z eye = [ModelV iew] y obs z obs = [V iew].[model] y obs z obs w eye w obs w obs Projection : glmatrixmode(gl PROJECTION) x clip x eye y clip z clip = [P rojection] y eye z eye w clip w eye [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
7 Transformations Matrices de transformations Projection : glmatrixmode(gl PROJECTION) x ndc x clip /w clip y ndc = x clip /w clip z ndc x clip /w clip NDC : Normalized Device Coordinates Fenêtrage (x,y,w,h) et profondeur (f,n) w x.x win 2 ndc + (x + w) 2 y win = h.y 2 ndc + (y + h) 2 f n z win.z 2 ndc + f+n 2 [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
8 Transformations Caméra Virtuelle OpenGL Point d observation par défaut la caméra est située sur l axe Oz direction de viséee : origine du repère verticale de la caméra : axe Oy du repère [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
9 Transformations Transformations OpenGL Didacticiel Nate Robbins (ENIB-CERV) Univers Virtuels enib c / 49
10 Transformations Matrices de transformations Activation de matrices : glmatrixmode() GL MODELVIEW : matrice de transformation-visualisation GL PROJECTION : matrice de projection GL TEXTURE : matrice de texture GL MODELVIEW : matrice active par défaut Manipulation de matrices glloadidentity() : initialisation de matrice glloadmatrix() : chargement de matrice (16 coefficients) [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
11 Transformations Matrices de transformations Enchaînement de transformation 1 gltranslatef(float dx,float dy,float dz) : [M a ] = [M a ][M t ], translation (dx, dy, dz) 2 glrotatef(float theta, float x,float y,float z) : [M a ] = [M a ][M θ ], rotation de θ autour de l axe (0, x, y, z) 3 glscalef(float hx,float hy,float hz) : [M a ] = [M a ][M h ], homothétie, mise à l échelle (hx, hy, hz) Exemple d enchaînement Translation (axe Oy) suivi d une rotation (45 o, axe Oz) glloadidentity(); glrotatef(45.0,0.0,0.0,1.0); gltranslatef(0.0,1.0,0.0); [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
12 Transformations Coordonnées et matrice homogène glloadidentity() gltranslatef(dx,dy,dz) dx dy dz [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
13 Transformations Coordonnées et matrice homogène glrotatef(θ,1,0,0) cosθ sinθ 0 0 sinθ cosθ glrotatef(θ,0,1,0) cosθ 0 sinθ sinθ cosθ [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
14 Transformations Coordonnées et matrice homogène glrotatef(θ,0,0,1) cosθ sinθ 0 0 sinθ cosθ Rotation θ autour d un vecteur unitaire u = (u x, u y, u z ) u 2 x + (1 u 2 x)c u x u y (1 c) u z s u x u z (1 c) + u y s R = u x u y (1 c) + u z s u 2 y + (1 u 2 y)c u y u z (1 c) u x s u x u z (1 c) u y s u y u z (1 c) + u x s u 2 z + (1 u 2 z)c c = cosθ, s = sinθ [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
15 Transformations Matrices de transformations Exemple de transformation glloadidentity(); gltranslatef(0.5,0.0,0.0); glcolor3f(1.0,0.0,0.0); glrectf(-0.25, -0.25, 0.25, 0.25); glrotatef(45.0,0.0,0.0,1.0); glcolor3f(0.0,1.0,0.0); glrectf(-0.25, -0.25, 0.25, 0.25); Visualisation de transformation? (ENIB-CERV) Univers Virtuels enib c / 49
16 Transformations Visualisation de transformation Visualisation par défaut caméra positionnée sur l axe Oz (centre de la fenêtre) dirigée vers l origine du repère (vers l intérieur, z < 0)) projection orthogonale (pas de point de fuite) Exemple : Observation de scène glloadidentity(); gltranslated(0,0,-5); gltranslated(1,0,0); glbegin(gl_quads);... glend(); [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
17 Transformations Positionnement de caméra Interprétation de modélisation création d un quadrilatère transformations : translations (1, 0, 0) suivi de (0, 0, 5) Interprétation de visualisation création d un quadrilatère positionnement de la caméra en ( 1, 0, 5) glulookat(xpos,ypos,zpos,xdir,ydir,zdir,hx, hy,hz) Caméra : position,direction de visée et axe vertical glloadidentity(); glulookat(-1,0,5,0,0,0,0,1,0);... [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
18 Projection Projection et cadrage Affichage Matrice de projection et zone d affichage perspective conique : glperspective(),glfrustum() perspective cavalière : glortho(), glortho2d() dimensionnement de la photo : glviewport() Recadrage : glutreshapefunc(reshape) void reshape(int width, int height) { glviewport(0,0, (GLsizei) width, (GLsizei) height); glmatrixmode(gl_projection); glloadidentity(); glortho(-50.0, 50.0, -50.0, 50.0, -1.0, 1.0); glmatrixmode(gl_modelview); glloadidentity(); } [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
19 Types de projection Projection Volume de visualisation glortho() glortho(gldouble left, GLdouble right, GLdouble bottom, GLdouble up, GLdouble near, GLdouble far) Matrice de projection et zone d affichage [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
20 Types de projection Projection Volume de visualisation glfrustum() glfrustum(gldouble left, GLdouble right, GLdouble bottom, GLdouble up, GLdouble near, GLdouble far) Matrice de projection et zone d affichage [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
21 Types de projection Projection Volume de visualisation glperspective() gluperspective(gldouble foc, GLdouble ratio, GLdouble near, GLdouble far) Matrice de projection et zone d affichage [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
22 Création de scène Gestion de scène Création de scène Plusieurs objets à dessiner Placer un objet en (1, 0, 1) et l autre en (5, 0, 0) glloadidentity(); gltranslatef(1.0,0.0,1.0); dessineobjet(); gltranslatef(5.0,0.0,0.0); dessineobjet(); Problème de la matrice active accumulation des transformations deuxième objet placé en (6, 0, 1) Solution : glloadidentity() après le dessin du premier objet [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
23 Gestion de scène Déplacement d observateur Observation de scène Position d observation : glulookat() glloadidentity(); glulookat(10.0,0.0,0.0,0.0,0.0,0.0,0.0,1.0,0.0); gltranslatef(1.0,0.0,1.0); dessineobjet(); glloadidentity(); gltranslatef(5.0,0.0,0.0); dessineobjet(); Problème de la matrice active réinitialisation après le premier dessin appel glulookat() après chaque dessin... Solution : piles de matrices OpenGL [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
24 Gestion de scène Pile de matrices Pile de matrices : visualisation de scènes Matrice active : Empiler-Dépiler glpushmatrix() : copie de la matrice active dans la pile. glpopmatrix() : enlever la matrice du sommet de la pile et la copier dans la matrice active Matrice active : Affichage de scène glloadidentity(); glulookat(10.0,0.0,0.0,0.0,0.0,0.0,0.0,1.0,0.0); glpushmatrix(); gltranslatef(1.0,0.0,2.0); dessineobjet(); glpopmatrix(); gltranslatef(5.0,0.0,0.0); dessineobjet(); [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
25 Gestion de scène Pile de matrices Pile de matrices : visualisation de scènes Dessine-moi une roue void dessine_roue_et_boulons(void) { dessine_roue(); for (int i=0;i<5;i++) { glpushmatrix(); glrotatef(degre*i, 0.0, 0.0, 1.0); gltranslatef(xboulon, 0.0, 0.0); dessine_boulon(); glpopmatrix(); } } [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
26 Gestion de scène Pile de matrices Pile de matrices : visualisation de scènes Dessine-moi une voiture void dessine_voiture(void) { dessine_carrosserie(); glpushmatrix(); gltranslatef(x1, 0.0, z1); dessine_roue_et_boulons(); glpopmatrix(); glpushmatrix(); gltranslatef(x1, 0.0, -z1); dessine_roue_et_boulons();... } [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
27 Graphe de scènes Définition Graphe de scènes : définition Définition Graphe Acyclique Orienté (DAG) noeuds et liens parent-enfant Principe de base les feuilles sont les objets à dessiner noeud intermédiaire : groupe ou transformation chaque noeud n a qu un seul parent transformation courante : composition des transformations sur le chemin menant de la racine au noeud courant coordonnées d un objet relatives à la transformation courante [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
28 Graphe de scènes Définition Graphe de scènes : parcours d arbre Parcours d un arbre En chaque noeud on mémorise la matrice de transformation courante on transforme localement on dessine chacun des noeuds fils on restaure la matrice de transformation Intérêts héritage de propriété (rotation roue-boulon) facilité de manipulation (déplacement de l ensemble) partage d objets (une seule roue, 4 transformations) [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
29 Graphe de scènes Construction Graphe de scènes : construction Construction glrotate(90,10,0); glpushmatrix(); gltranslate(-2,0,0); affichersphere1(); glpopmatrix() glpushmatrix(); gltranslate(2,0,0); affichersphere2(); glpopmatrix(); Exemples courants voiture, système solaire, humanoïdes... [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
30 Graphe de scènes PyGame : scenegraph.py Exemple Pygame Initialisation import math import sys import pygame,sys,time from pygame.locals import * from OpenGL.GL import * from OpenGL.GLU import * class ExitException(Exception): def init (self,*kwargs): Exception. init (self,*kwargs) [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
31 Graphe de scènes PyGame : scenegraph.py Exemple Pygame Primitives def Point(): glbegin(gl_points) glvertex(0,0,0) glend() def Triangle(): glbegin(gl_triangles) glvertex(0,0.8,0) glvertex(0.2,-0.2,0) glvertex(-0.2,-0.2,0) glend() [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
32 Graphe de scènes PyGame : scenegraph.py Exemple Pygame Primitives def Quad(): glbegin(gl_quads) glvertex( 0.5, 0.5) glvertex( 0.5,-0.5) glvertex(-0.5,-0.5) glvertex(-0.5, 0.5) glend() [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
33 Graphe de scènes PyGame : scenegraph.py Exemple Pygame La Scène class SceneNode: def init (self,children = None): if children: self.children = children else: self.children = [] def draw(self): for x in self.children: x.draw() [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
34 Graphe de scènes PyGame : scenegraph.py Exemple Pygame Noeud Primitive class ThingNode(SceneNode): def init (self,func): SceneNode. init (self) self.func = func def draw(self): glcolor(0,0,0) glpushmatrix() self.func() glpopmatrix() [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
35 Graphe de scènes PyGame : scenegraph.py Exemple Pygame Noeud d Echelle class ScaleNode(SceneNode): def init (self,factor,children = None): SceneNode. init (self,children) self.factor = factor def draw(self): glpushmatrix() if callable(self.factor): glscale(*self.factor()) else: glscale(*self.factor) SceneNode.draw(self) glpopmatrix() [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
36 Graphe de scènes PyGame : scenegraph.py Exemple Pygame Noeud de Translation class TranslationNode(SceneNode): def init (self,offset,children = None): SceneNode. init (self,children) self.offset = offset def draw(self): glpushmatrix() if callable(self.offset): gltranslate(*self.offset()) else: gltranslate(*self.offset) SceneNode.draw(self) glpopmatrix() [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
37 Graphe de scènes PyGame : scenegraph.py Exemple Pygame Noeud de Rotation class RotationNode(SceneNode): def init (self,angle,axe,children = None): SceneNode. init (self,children) self.angle,self.xrot,...=angle,axe[0],... def draw(self): glpushmatrix() if callable(self.angle): glrotate(self.angle(), self.xrot,self.yrot,self.zrot) else: glrotate(self.angle, self.xrot,self.yrot,self.zrot) SceneNode.draw(self) glpopmatrix() [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
38 Graphe de scènes PyGame : scenegraph.py Exemple Pygame Programme de test def main(): dx,dy,dz= 0.0,0.0,0.0 pygame.init() size = width,height = 480,480 screen = pygame.display.set_mode(size, pygame.opengl pygame.doublebuf) glloadidentity() glmatrixmode(gl_projection) glloadidentity() gluortho2d(-10,10,-10,10) glmatrixmode(gl_modelview) glloadidentity() glclearcolor(1,1,1,0) #... next slide [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
39 Graphe de scènes PyGame : scenegraph.py Exemple Pygame Programme de test root = SceneNode( [TranslationNode((5,2,0), [RotationNode(\ lambda :pygame.time.get_ticks()/10%360, (1.0,0.0,0.0), [ThingNode(Triangle)]), TranslationNode((-5,-2,0),\ [ThingNode(Quad)]) ]) ]) #... next slide [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
40 Graphe de scènes PyGame : scenegraph.py Exemple Pygame Programme de test def render_loop(): glclear(gl_depth_buffer_bit GL_COLOR_BUFFER_BIT) glloadidentity() gltranslate(dx,dy,dz) root.draw() glflush() pygame.display.flip() #... next slide [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
41 Graphe de scènes PyGame : scenegraph.py Exemple Pygame Programme de test while True: for event in pygame.event.get(): if event.type == QUIT: raise ExitException() elif event.type == KEYDOWN: if event.key == K_ESCAPE: raise ExitException() elif event.key == K_UP : dy=dy-0.5 # K_DOWN (dy=dy+0.5)... and so on else : pass render_loop() pygame.quit() [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
42 Animation de scènes Principes Animation de scènes : principe Projection cinématographique void projecteur(void) { int pellicule = ; for (i=0;i<pellicule;i++) { vider_la_fenetre(); dessiner(i); attendre_un_24eme_de_seconde(); } Problème temps nécessaire au dessin, effacement dessin en retard d objets, aspects fantomatiques [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
43 Animation de scènes Double-tampon Animation de scènes : Double-buffering Solution : Projecteur double-tampon Il n y a plus de pellicule mais deux cadres un tampon pour afficher un tampon pour dessiner Animation double-tampon initialiser_mode_double_tampons(); for (i=0;i< ;i++) { vider_la_fenetre(); dessiner(i); echange_les_tampons(); } [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
44 Animation de scènes Animation OpenGL Animation de scènes : OpenGL Affichage en OpenGL void display(void) { glclear(gl_color_buffer_bit); glloadidentity(); glrotatef(spin, 0.0, 0.0, 1.0); glcolor3f(1.0,1.0,1.0); glrectf(-0.5,-0.5,0.5,0.5); glutswapbuffers(); } [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
45 int main(int argc,char **argv) {... glutidlefunc(displayevent);... } [email protected] (ENIB-CERV) Univers Virtuels enib c / 49 Animation de scènes Animation OpenGL Animation de scènes : OpenGL Définition de l animation void displayevent(void) { spin = spin + 0.5; if (spin > 360.0) spin = spin ; glutpostredisplay(); } Gestion de l animation
46 Interaction avec la scène Liaison Evénement-Action Types d événements affichage, clavier, souris Gestion d événements divers périphériques (tablettes graphiques, spaceballs...) modification de la configuration de la fenêtre indépendent des interactions (idle) Boucle d événements int main(int argc,char **argv) { initglut(argc,argv); initgl(); glutdisplayfunc(display); glutmainloop(); return(0); } [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
47 Interaction avec la scène Gestion d événements Fonctions de rappels (callbacks) Implémentation du comportrement void keyboard(unsigned char key,int x,int y) { switch (key) { case p : /* affichage du carre plein */ glpolygonmode(gl_front_and_back,gl_fill); glutpostredisplay(); break; case f : /* affichage en mode fil de fer */ glpolygonmode(gl_front_and_back,gl_line);... int main(int argc,char **argv) {... glutkeyboardfunc(keyboard);... [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
48 Références Références bibliographique Bibliographie Livres M. Woo, J. Neider, T. Davis, D. Schreiner : OPengl 2.0 Guide Officiel Collection Campus Press (2006) Samuel R. Buss : 3D Computer Graphics : A mathematical introduction with OpenGL Collection Cambridge University Press (2003) B. Péroche, D. Bechmann : Informatique graphique et rendu Collection Hermès, Lavoisier (2007) R. Malgouires : Algorithmes pour la synthèse d images et l animation 3D Éditions Dunod (2002) [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
49 Références Internet Références Internet Adresses au Net : le site officiel : Nate Robbins : les tutoriaux de Xavier Michelon Python_Simple_SceneGraph : Graphe de Scène en Pygame : tutoriaux OpenGL : la 3D en long et en large (et en hauteur) : entre autre de la 2D/3D [email protected] (ENIB-CERV) Univers Virtuels enib c / 49
Graphics Pipeline in a Nutshell
Graphics Pipeline in a Nutshell How do we create a rendering such as this? CS334 Spring 2008 Design the scene (technical drawing in wireframe ) Apply perspective transformations to the scene geometry for
Computer Graphics (Basic OpenGL, Input and Interaction)
Computer Graphics (Basic OpenGL, Input and Interaction) Thilo Kielmann Fall 2008 Vrije Universiteit, Amsterdam [email protected] http://www.cs.vu.nl/ graphics/ Computer Graphics (Basic OpenGL, Input and
Computer Graphics Labs
Computer Graphics Labs Abel J. P. Gomes LAB. 2 Department of Computer Science and Engineering University of Beira Interior Portugal 2011 Copyright 2009-2011 All rights reserved. LAB. 2 1. Learning goals
CS 4204 Computer Graphics
CS 4204 Computer Graphics 2D and 3D Transformations Doug Bowman Adapted from notes by Yong Cao Virginia Tech 1 Transformations What are they? changing something to something else via rules mathematics:
An Introduction to. Graphics Programming
An Introduction to Graphics Programming with Tutorial and Reference Manual Toby Howard School of Computer Science University of Manchester V3.3, January 13, 2010 Contents 1 About this manual 1 1.1 How
Transformations in the pipeline
Transformations in the pipeline gltranslatef() Modeling transformation ModelView Matrix OCS WCS glulookat() VCS CCS Viewing transformation Projection transformation DCS Viewport transformation (e.g. pixels)
4BA6 - Topic 4 Dr. Steven Collins. Chap. 5 3D Viewing and Projections
4BA6 - Topic 4 Dr. Steven Collins Chap. 5 3D Viewing and Projections References Computer graphics: principles & practice, Fole, vandam, Feiner, Hughes, S-LEN 5.644 M23*;-6 (has a good appendix on linear
Aston University. School of Engineering & Applied Science
CS2150 Aston University School of Engineering & Applied Science CS2150: Computer Graphics January Examinations 2010 Date: XXX Time: XXX Instructions to Candidates: 1. Answer Question ONE and any other
POB-JAVA Documentation
POB-JAVA Documentation 1 INTRODUCTION... 4 2 INSTALLING POB-JAVA... 5 Installation of the GNUARM compiler... 5 Installing the Java Development Kit... 7 Installing of POB-Java... 8 3 CONFIGURATION... 9
Computer Graphics Labs
Computer Graphics Labs Abel J. P. Gomes LAB. 3 Department of Computer Science and Engineering University of Beira Interior Portugal 2011 Copyright 2009-2011 All rights reserved. 1. Learning goals 2. Timing
Introduction. GEAL Bibliothèque Java pour écrire des algorithmes évolutionnaires. Objectifs. Simplicité Evolution et coévolution Parallélisme
GEAL 1.2 Generic Evolutionary Algorithm Library http://dpt-info.u-strasbg.fr/~blansche/fr/geal.html 1 /38 Introduction GEAL Bibliothèque Java pour écrire des algorithmes évolutionnaires Objectifs Généricité
Remote Method Invocation
1 / 22 Remote Method Invocation Jean-Michel Richer [email protected] http://www.info.univ-angers.fr/pub/richer M2 Informatique 2010-2011 2 / 22 Plan Plan 1 Introduction 2 RMI en détails
Introduction au BIM. ESEB 38170 Seyssinet-Pariset Economie de la construction email : [email protected]
Quel est l objectif? 1 La France n est pas le seul pays impliqué 2 Une démarche obligatoire 3 Une organisation plus efficace 4 Le contexte 5 Risque d erreur INTERVENANTS : - Architecte - Économiste - Contrôleur
CSS : petits compléments
CSS : petits compléments Université Lille 1 Technologies du Web CSS : les sélecteurs 1 au programme... 1 ::before et ::after 2 compteurs 3 media queries 4 transformations et transitions Université Lille
Thursday, February 7, 2013. DOM via PHP
DOM via PHP Plan PHP DOM PHP : Hypertext Preprocessor Langage de script pour création de pages Web dynamiques Un ficher PHP est un ficher HTML avec du code PHP
Methodology for Lecture. Review of Last Demo
Basic Geometry Setup Methodology for Lecture Make mytest1 more ambitious Sequence of steps Demo Review of Last Demo Changed floor to all white, added global for teapot and teapotloc, moved geometry to
Langages Orientés Objet Java
Langages Orientés Objet Java Exceptions Arnaud LANOIX Université Nancy 2 24 octobre 2006 Arnaud LANOIX (Université Nancy 2) Langages Orientés Objet Java 24 octobre 2006 1 / 32 Exemple public class Example
Personnalisez votre intérieur avec les revêtements imprimés ALYOS design
Plafond tendu à froid ALYOS technology ALYOS technology vous propose un ensemble de solutions techniques pour vos intérieurs. Spécialiste dans le domaine du plafond tendu, nous avons conçu et développé
Optimizing and interfacing with Cython. Konrad HINSEN Centre de Biophysique Moléculaire (Orléans) and Synchrotron Soleil (St Aubin)
Optimizing and interfacing with Cython Konrad HINSEN Centre de Biophysique Moléculaire (Orléans) and Synchrotron Soleil (St Aubin) Extension modules Python permits modules to be written in C. Such modules
Chapter 1 Introduction to OpenGL
OpenGL Programming Guide (Addison-Wesley Publishing Company) Chapter 1 Introduction to OpenGL Chapter Objectives After reading this chapter, you ll be able to do the following: Appreciate in general terms
Lecture 3: Coordinate Systems and Transformations
Lecture 3: Coordinate Systems and Transformations Topics: 1. Coordinate systems and frames 2. Change of frames 3. Affine transformations 4. Rotation, translation, scaling, and shear 5. Rotation about an
SEMIN- Dessine-moi un arbre : représentation graphique des arbres phylogénétiques avec le package ape
SEMIN- Dessine-moi un arbre : représentation graphique des arbres phylogénétiques avec le package ape NATTIER, Romain Muséum national d'histoire naturelle UMR 7205 OSEB SEMIN-R du MNHN 28 Janvier 2011
Memory Eye SSTIC 2011. Yoann Guillot. Sogeti / ESEC R&D yoann.guillot(at)sogeti.com
Memory Eye SSTIC 2011 Yoann Guillot Sogeti / ESEC R&D yoann.guillot(at)sogeti.com Y. Guillot Memory Eye 2/33 Plan 1 2 3 4 Y. Guillot Memory Eye 3/33 Memory Eye Analyse globale d un programme Un outil pour
Modifier le texte d'un élément d'un feuillet, en le spécifiant par son numéro d'index:
Bezier Curve Une courbe de "Bézier" (fondé sur "drawing object"). select polygon 1 of page 1 of layout "Feuillet 1" of document 1 set class of selection to Bezier curve select Bezier curve 1 of page 1
OpenGL & Delphi. Max Kleiner. http://max.kleiner.com/download/openssl_opengl.pdf 1/22
OpenGL & Delphi Max Kleiner http://max.kleiner.com/download/openssl_opengl.pdf 1/22 OpenGL http://www.opengl.org Evolution of Graphics Assembler (demo pascalspeed.exe) 2D 3D Animation, Simulation (Terrain_delphi.exe)
1-20020138637 26-sept-2002 Computer architecture and software cells for broadband networks Va avec 6526491
Les brevets CELL 14 décembre 2006 1 ARCHITECTURE GENERALE 1-20020138637 26-sept-2002 Computer architecture and software cells for broadband networks 6526491 2-6526491 25-févr-03 Memory protection system
Cours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé. http://www.rzo.free.fr
Cours de Java Sciences-U Lyon Java - Introduction Java - Fondamentaux Java Avancé http://www.rzo.free.fr Pierre PARREND 1 Octobre 2004 Sommaire Java Introduction Java Fondamentaux Java Avancé GUI Graphical
Technical Service Bulletin
Technical Service Bulletin FILE CONTROL CREATED DATE MODIFIED DATE FOLDER OpenDrive 02/05/2005 662-02-25008 Rev. : A Installation Licence SCO sur PC de remplacement English version follows. Lors du changement
Reconstruction d un modèle géométrique à partir d un maillage 3D issu d un scanner surfacique
Reconstruction d un modèle géométrique à partir d un maillage 3D issu d un scanner surfacique Silvère Gauthier R. Bénière, W. Puech, G. Pouessel, G. Subsol LIRMM, CNRS, Université Montpellier, France C4W,
Given a point cloud, polygon, or sampled parametric curve, we can use transformations for several purposes:
3 3.1 2D Given a point cloud, polygon, or sampled parametric curve, we can use transformations for several purposes: 1. Change coordinate frames (world, window, viewport, device, etc). 2. Compose objects
site et appel d'offres
Définition des besoins et élaboration de l'avant-projet Publication par le client de l'offre (opération sur le externe) Start: 16/07/02 Finish: 16/07/02 ID: 1 Dur: 0 days site et appel d'offres Milestone
Calcul parallèle avec R
Calcul parallèle avec R ANF R Vincent Miele CNRS 07/10/2015 Pour chaque exercice, il est nécessaire d ouvrir une fenètre de visualisation des processes (Terminal + top sous Linux et Mac OS X, Gestionnaire
Licence Informatique Année 2005-2006. Exceptions
Université Paris 7 Java Licence Informatique Année 2005-2006 TD n 8 - Correction Exceptions Exercice 1 La méthode parseint est spécifiée ainsi : public static int parseint(string s) throws NumberFormatException
Graphics Input Primitives. 5. Input Devices Introduction to OpenGL. String Choice/Selection Valuator
4ICT10 Computer Graphics and Virtual Reality 5. Input Devices Introduction to OpenGL Dr Ann McNamara String Choice/Selection Valuator Graphics Input Primitives Locator coordinate pair x,y Pick required
Android and OpenGL. Android Smartphone Programming. Matthias Keil. University of Freiburg
Android and OpenGL Android Smartphone Programming Matthias Keil Institute for Computer Science Faculty of Engineering 16. Dezember 2013 Outline 1 OpenGL Introduction 2 Displaying Graphics 3 Interaction
Brazil + JDBC Juin 2001, [email protected] http://jfod.cnam.fr/tp_cdi/douin/
Brazil + JDBC Juin 2001, [email protected] http://jfod.cnam.fr/tp_cdi/douin/ version du 26 Mai 2003 : JDBC-SQL et Brazil pré-requis : lecture de Tutorial JDBC de Sun Bibliographie Brazil [Bra00]www.sun.com/research/brazil
Introduction ToIP/Asterisk Quelques applications Trixbox/FOP Autres distributions Conclusion. Asterisk et la ToIP. Projet tuteuré
Asterisk et la ToIP Projet tuteuré Luis Alonso Domínguez López, Romain Gegout, Quentin Hourlier, Benoit Henryon IUT Charlemagne, Licence ASRALL 2008-2009 31 mars 2009 Asterisk et la ToIP 31 mars 2009 1
Machine de Soufflage defibre
Machine de Soufflage CABLE-JET Tube: 25 à 63 mm Câble Fibre Optique: 6 à 32 mm Description générale: La machine de soufflage parfois connu sous le nom de «câble jet», comprend une chambre d air pressurisé
Archived Content. Contenu archivé
ARCHIVED - Archiving Content ARCHIVÉE - Contenu archivé Archived Content Contenu archivé Information identified as archived is provided for reference, research or recordkeeping purposes. It is not subject
ANIMATION OF CONTINUOUS COMPUTER SIMULATIONS C.M. Woodside and Richard Mallet Computer Center, Carleton University ABSTRACT
19.1 ANIMATION OF CONTINUOUS COMPUTER SIMULATIONS C.M. Woodside and Richard Mallet Computer Center, Carleton University ABSTRACT A block-oriented graphics program called ANIM8 has been developed for animating
Introduzione ad OpenGL
Introduzione ad OpenGL Cosa è OpenGL E una interfaccia so8ware all hardware grafico, rendering API Indipendente dal sistema di windowing Indipendente dal sistema operabvo Evoluzione di OpenGL Viene gesbta
Note concernant votre accord de souscription au service «Trusted Certificate Service» (TCS)
Note concernant votre accord de souscription au service «Trusted Certificate Service» (TCS) Veuillez vérifier les éléments suivants avant de nous soumettre votre accord : 1. Vous avez bien lu et paraphé
niveau : 1 ere année spécialité : mécatronique & froid et climatisation AU : 2014-2015 Programmation C Travaux pratiques
École Supérieure Privée d Ingénieurs de Monastir niveau : 1 ere année spécialité : mécatronique & froid et climatisation AU : 2014-2015 Programmation C Travaux pratiques Correction Exercice 1 TP3 long
In-Home Caregivers Teleconference with Canadian Bar Association September 17, 2015
In-Home Caregivers Teleconference with Canadian Bar Association September 17, 2015 QUESTIONS FOR ESDC Temporary Foreign Worker Program -- Mr. Steve WEST *Answers have been updated following the conference
CMSC 427 Computer Graphics 1
CMSC 427 Computer Graphics 1 David M. Mount Department of Computer Science University of Maryland Spring 2004 1 Copyright, David M. Mount, 2004, Dept. of Computer Science, University of Maryland, College
How To Write A Program In Java (Programming) On A Microsoft Macbook Or Ipad (For Pc) Or Ipa (For Mac) (For Microsoft) (Programmer) (Or Mac) Or Macbook (For
Projet Java Responsables: Ocan Sankur, Guillaume Scerri (LSV, ENS Cachan) Objectives - Apprendre à programmer en Java - Travailler à plusieurs sur un gros projet qui a plusieurs aspects: graphisme, interface
120, 200 x. r1 = 25. virtua void translate (int dx, dy) = 0; virtual void dessiner(graphics &g) = 0;
Adresse : [email protected] 1. COO par lʼexemple 100,50 a, 30 120, 200 x r1 = 25 Graphics Dessin translater(dx, dy) dessiner(g) drawline(x,y,h,l) drawellipse fillrect setcolor setbgcolor() *
TP : Configuration de routeurs CISCO
TP : Configuration de routeurs CISCO Sovanna Tan Novembre 2010 révision décembre 2012 1/19 Sovanna Tan TP : Routeurs CISCO Plan 1 Présentation du routeur Cisco 1841 2 Le système d exploitation /19 Sovanna
Méthodes ensemblistes pour une localisation robuste de robots sous-marins
Méthodes ensemblistes pour une localisation robuste de robots sous-marins Jan Sliwka To cite this version: Jan Sliwka. Méthodes ensemblistes pour une localisation robuste de robots sous-marins. Automatique
[ dessins, collages, illustrations, etcetera ]
Elvire Bastendorff [ dessins, collages, etcetera ] Dossier de Présentation elvire bastendorff [email protected] [ dessins, collages, illustrations, etcetera ] Elvire Bastendorff [ dessins, collages,
Jawaharlal Nehru Engineering College
Jawaharlal Nehru Engineering College Laboratory Manual Computer Graphics For Second Year Students CSE Dept: Information Technology FORWARD It is my great pleasure to present this laboratory manual for
Applying this template to your existing presentation
Session TIV06 Intégration des outils ztivoli de supervision, automatisation et ordonnancement Marc AMADOU, Technical Sales Tivoli Mathieu DALBIN, Technical Sales Tivoli 1 La supervision et l automatisation
Detection of water leakage using laser images from 3D laser scanning data
Detection of water leakage using laser images from 3D laser scanning data QUANHONG FENG 1, GUOJUAN WANG 2 & KENNERT RÖSHOFF 3 1 Berg Bygg Konsult (BBK) AB,Ankdammsgatan 20, SE-171 43, Solna, Sweden (e-mail:[email protected])
The mouse callback. Positioning. Working with Callbacks. Obtaining the window size. Objectives
Objectives Working with Callbacks Learn to build interactive programs using GLUT callbacks - Mouse - Keyboard - Reshape Introduce menus in GLUT The mouse callback glutmousefunc(mymouse) void mymouse(glint
GSAC CONSIGNE DE NAVIGABILITE définie par la DIRECTION GENERALE DE L AVIATION CIVILE Les examens ou modifications décrits ci-dessous sont impératifs. La non application des exigences contenues dans cette
«Object-Oriented Multi-Methods in Cecil» Craig Chambers (Cours IFT6310, H08)
«Object-Oriented Multi-Methods in Cecil» Craig Chambers (Cours IFT6310, H08) Mathieu Lemoine 2008/02/25 Craig Chambers : Professeur à l Université de Washington au département de Computer Science and Engineering,
Post-Secondary Opportunities For Student-Athletes / Opportunités post-secondaire pour les étudiantathlètes
Post-Secondary Opportunities For Student-Athletes / Opportunités post-secondaire pour les étudiantathlètes Jean-François Roy Athletics Canada / Athlétisme Canada Talent Development Coordinator / Coordonnateur
MOTEUR / ENGINE COMMISSION INTERNATIONALE DE KARTING FIA FICHE TECHNIQUE D AGRÉMENT APPROVAL TECHNICAL FORM 01/FM/09 FORMULE MONDIALE / WORLD FORMULA
FICHE TECHNIQUE D AGRÉMENT APPROVAL TECHNICAL FORM Agrément N COMMISSION INTERNATIONALE DE KARTING FIA MOTEUR / ENGINE FORMULE MONDIALE / WORLD FORMULA Constructeur Manufacturer BRIGGS & STRATTON Marque
COLLABORATIVE LCA. Rachel Arnould and Thomas Albisser. Hop-Cube, France
COLLABORATIVE LCA Rachel Arnould and Thomas Albisser Hop-Cube, France Abstract Ecolabels, standards, environmental labeling: product category rules supporting the desire for transparency on products environmental
TP1 : Correction. Rappels : Stream, Thread et Socket TCP
Université Paris 7 M1 II Protocoles réseaux TP1 : Correction Rappels : Stream, Thread et Socket TCP Tous les programmes seront écrits en Java. 1. (a) Ecrire une application qui lit des chaines au clavier
Troncatures dans les modèles linéaires simples et à effets mixtes sous R
Troncatures dans les modèles linéaires simples et à effets mixtes sous R Lyon, 27 et 28 juin 2013 D.Thiam, J.C Thalabard, G.Nuel Université Paris Descartes MAP5 UMR CNRS 8145 IRD UMR 216 2èmes Rencontres
Les fragments. Programmation Mobile Android Master CCI. Une application avec deux fragments. Premier layout : le formulaire
Programmation Mobile Android Master CCI Bertrand Estellon Aix-Marseille Université March 23, 2015 Bertrand Estellon (AMU) Android Master CCI March 23, 2015 1 / 266 Les fragments Un fragment : représente
COMMISSION INTERNATIONALE DE KARTING - FIA
FICHE D HOMOLOGATION HOMOLOGATION FORM Homologation N 3/P/ COMMISSION INTERNATIONALE DE KARTING - FIA PNEUMATIQUE / TYRE Manufacturier Tyre Manufacturer Reifenwerk Heidenau GmbH Marque Make MOJO Modèle
A GREEN PARADISE AT THE GATES OF LISBON UN PARADIS VERT AUX PORTES DE LISBONNE
A GREEN PARADISE AT THE GATES OF LISBON UN PARADIS VERT AUX PORTES DE LISBONNE GREEN HILL S ESTATE IS A PRIVATE CONDOMINIUM OF 110 HECTARES LOCATED INSIDE A NATURAL RESERVE ON THE SOUTH BANK OF LISBON.
DHI a.s. Na Vrsich 51490/5, 100 00, Prague 10, Czech Republic ( [email protected], [email protected] )
NOVATECH Rehabilitation strategies in wastewater networks as combination of operational, property and model information Stratégies de réhabilitation des réseaux d'égouts combinant des données d exploitation,
Sun Management Center Change Manager 1.0.1 Release Notes
Sun Management Center Change Manager 1.0.1 Release Notes Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. Part No: 817 0891 10 May 2003 Copyright 2003 Sun Microsystems, Inc. 4150
Computer Graphics Through OpenGL: From Theory to Experiments
Computer Graphics Through OpenGL: From Theory to Experiments by Sumanta Guha Chapman & Hall/CRC v Experimenter Software (Prepared by Chansophea Chuon and Sumanta Guha) This file is to help you run the
An Introduction to 3D Computer Graphics, Stereoscopic Image, and Animation in OpenGL and C/C++ Fore June
An Introduction to 3D Computer Graphics, Stereoscopic Image, and Animation in OpenGL and C/C++ Fore June Chapter 11 Animation 11.1 Introduction Animation is an optical illusion of motion due to the phenomenon
- 343 - PIXEL-PLANES: A VLSI-ORIENTED DESIGN FOR 3-D RASTER GRAPHICS. H. Fuchs and J. Pou1ton. University of North Carolina at Chapel Hill
- 343 - PIXEL-PLANES: A VLSI-ORIENTED DESIGN FOR 3-D RASTER GRAPHICS H. Fuchs and J. Pou1ton University of North Carolina at Chapel Hill ABSTRACT We present here the design for a machine which can rapidly
READ AND FOLLOW ALL SAFETY INSTRUCTIONS 1. DANGER RISK OF SHOCK DISCONNECT POWER BEFORE INSTALLATION
UR Series LED Upgrade Kit Includes: 48" Linear Option IMPORTANT SAFEGUARDS When using electrical equipment, basic safety precautions should always be followed including the following: READ AND FOLLOW ALL
TIMISKAMING FIRST NATION
Post-Secondary Financial Assistance Forms TFN EDUCATION 2014-05-01 TIMISKAMING FIRST NATION 0 Education Dept. Application Check List Please enclose the following when applying: Form: Statement of Intent
TABLECLOTHS TEMPLATES
Hemmed Edges Bords Ourlés / Dobladillo TABLECLOTHS TEMPLATES PLANTILLAS PARA MANTELES / MODÉLES POUR NAPPES 4ft / 1.21m Economy Table Throw Totale de zone Graphique: 103" x 57.5" / 261.6cm x 146 cm Avant
2 RENSEIGNEMENTS CONCERNANT L ASSURÉ SI CELUI-CI N EST PAS LE REQUÉRANT INFORMATION CONCERNING THE INSURED PERSON IF OTHER THAN THE APPLICANT
SÉCURITÉ SOCIALE SOCIAL SECURITY ACCORD DU 9 FÉVRIER 1979 ENTRE LA FRANCE ET LE CANADA AGREEMENT OF FEBRUARY 9, 1979 BETWEEN FRANCE AND CANADA Formulaire FORM SE 401-06 INSTRUCTION D UNE DEMANDE DE PENSION
Classification automatique d images par arbres de décision
Classification automatique d images par arbres de décision Raphaël Marée Thèse de Doctorat en Informatique Institut Montefiore, Université de Liège 8 février 2005 Raphaël Marée Classification d images
Archived Content. Contenu archivé
ARCHIVED - Archiving Content ARCHIVÉE - Contenu archivé Archived Content Contenu archivé Information identified as archived is provided for reference, research or recordkeeping purposes. It is not subject
Archived Content. Contenu archivé
ARCHIVED - Archiving Content ARCHIVÉE - Contenu archivé Archived Content Contenu archivé Information identified as archived is provided for reference, research or recordkeeping purposes. It is not subject
Liste d'adresses URL
Liste de sites Internet concernés dans l' étude Le 25/02/2014 Information à propos de contrefacon.fr Le site Internet https://www.contrefacon.fr/ permet de vérifier dans une base de donnée de plus d' 1
Future Entreprise. Jean-Dominique Meunier NEM Executive Director www.nem-initiative.org. Nov. 23, 2009 FIA Stockholm
Future Entreprise Jean-Dominique Meunier NEM Executive Director www.nem-initiative.org Nov. 23, 2009 FIA Stockholm 1 Nov. 23, 2009 FIA Stockholm Source : @JDM 2 Nov. 23, 2009 FIA Stockholm Source : @JDM
Bienvenue au Forum Vector 2007
insert Insert picture and 8cm click x 7cm Align Title Graphic. Bienvenue au Forum Vector 2007 Henri Belda Vector France V2.1 2005-07-27 insert Insert picture and 8cm click x 7cm Align Title Graphic. Vector
Annexe - OAuth 2.0. 1 Introduction. Xavier de Rochefort [email protected] - labri.fr/~xderoche 15 mai 2014
1 Introduction Annexe - OAuth 2.0. Xavier de Rochefort [email protected] - labri.fr/~xderoche 15 mai 2014 Alternativement à Flickr, notre serveur pourrait proposer aux utilisateurs l utilisation de leur
Retour vers le futur des bibliothèques de squelettes algorithmiques et DSL
Retour vers le futur des bibliothèques de squelettes algorithmiques et DSL Sylvain Jubertie [email protected] Journée LaMHA - 26/11/2015 Squelettes algorithmiques 2 / 29 Squelettes algorithmiques
Archived Content. Contenu archivé
ARCHIVED - Archiving Content ARCHIVÉE - Contenu archivé Archived Content Contenu archivé Information identified as archived is provided for reference, research or recordkeeping purposes. It is not subject
Archived Content. Contenu archivé
ARCHIVED - Archiving Content ARCHIVÉE - Contenu archivé Archived Content Contenu archivé Information identified as archived is provided for reference, research or recordkeeping purposes. It is not subject
NIVEAU 1 - DEBUTANT. Issu de la méthode Language in Use des Editions Cambridge University Press
NIVEAU 1 - DEBUTANT Issu de la méthode Language in Use des Editions Cambridge University Press Reflex English Niveau 1 s adresse aux débutants mais aussi à ceux qui souhaitent revoir les bases grammaticales
Constructions d Interfaces Graphiques
Informatique S7 Module IHM Constructions d Interfaces Graphiques TkInter Alexis NEDELEC LISYC EA 3883 UBO-ENIB-ENSIETA Centre Européen de Réalité Virtuelle Ecole Nationale d Ingénieurs de Brest enib c
Product / Produit Description Duration /Days Total / Total
DELL Budget Proposal / Proposition Budgétaire Solutions Design Centre N o : 200903201602 Centre de Design de Solutions Date: 2009-03-23 Proposition valide pour 30 jours / Proposal valid for 30 days Customer
Unrealized Gains in Stocks from the Viewpoint of Investment Risk Management
Unrealized Gains in Stocks from the Viewpoint of Investment Risk Management Naoki Matsuyama Investment Administration Department, The Neiji Mutual Life Insurance Company, 1-1 Marunouchi, 2-chome, Chiyoda-ku,
Archived Content. Contenu archivé
ARCHIVED - Archiving Content ARCHIVÉE - Contenu archivé Archived Content Contenu archivé Information identified as archived is provided for reference, research or recordkeeping purposes. It is not subject
CMSC 427 Computer Graphics 1
CMSC 427 Computer Graphics 1 David M. Mount Department of Computer Science University of Maryland Fall 2010 1 Copyright, David M. Mount, 2010, Dept. of Computer Science, University of Maryland, College
Enterprise Risk Management & Board members. GUBERNA Alumni Event June 19 th 2014 Prepared by Gaëtan LEFEVRE
Enterprise Risk Management & Board members GUBERNA Alumni Event June 19 th 2014 Prepared by Gaëtan LEFEVRE Agenda Introduction Do we need Risk Management? The 8 th EU Company Law Directive Art 41, 2b Three
ref. 6 Young 2G Accès d angle à 2 portes pivotantes / Corner entry enclosure, 2 hinged doors
ref. 6 Young 2G ccès d angle à 2 portes pivotantes / orner entry enclosure, 2 hinged doors ref. 8 Young 2 Porte à 4 panneaux: 2 battants + 2 fi xes / Four section shower enclosure, 2 hinged + 2 fi xed
