ALGORITHMES POUR LINFOGRAPHIE
DAVID F.ROGERS
RESUME
L’infographie est devenue une discipline majeure. On dispose aujourd’hui des
matériels et des logiciels facilitant la production d’images aussi diverses que le dessin
au trait et le rendu d’objets naturels. Au cours des dernières années ,des progrès
significatifs dans l’infographie par balayage de trame ont été réalisés. Le présent
ouvrage se concentre sur ces aspects de l’infographie.
Le livre débute par une introduction aux matérielles d’infographie en mettant l’accent sur
la compréhension conceptuelle des virus à tube à rayons cathodiques et des dispositifs
interactifs Les chapitres suivants traitent des graphismes à balayage de trame ,y
compris le tracé de segment et de circonférences ,le remplissage de polygones et des
algorithmes anti-crénelage ;le fenêtrage en deux et en trois dimensions et par des
volumes convexes arbitraires, les algorithmes de suppression des lignes et des
surfaces cachées ,dont celui de rayon ,et pour finir ,le rendu « l’art » des rendre les
images réalistes ,notamment les modèles d’éclairement local et globale ,les textures
les ombres ,la transparence et les effets de coloration. Chaque exposé
théorique est suivi d’un algorithme taillé ou d’un exemple pratique ,ou de deux si ce nécessaire.
Ce livre s’adresse aux étudiants en informatique .Il est aussi conçu pour être utile aux programmeurs professionnels ,aux ingénieurs et
aux scientifiques .De plus les algorithmes taillés et les exemples pratiques le rendent particulièrement adapté à la formation
personnelle à tous les niveaux. Les connaissances préalables nécessaires se limitent aux mathématiques du niveau baccalauréat et à
un langage de programmation évolué .Une certaine connaissance des structures de données est utile mais pas indispensables.
TABLE DES MATIERES
Avant-propos IX
Chapitre 1. Psentation de linfographie 1
1.1. Vue générale de l’infographie 1
1.2. Dispositifs graphiques 3
1.3. Visus graphiques à tube à mémoire 4
1.4. Visus graphiques à rafraîchissement calligraphique 6
1.5. Visus graphiques à rafraîchissement de trame 11
1.6. Principe du tube à rayons cathodiques 18
1.7. Principe de la visu couleur à balayage de trame 19
1.8. Principe de la vio 20
1.9. Dispositifs interactifs 23
1.10. Références 33
Chapitre 2. Infographie à balayage de trame 35
2.1. Algorithmes de trace de droites 35
2.2. Analyseur difrentiel numérique 37
2.3. Algorithme de Bresenham 41
2.4. Algorithme de Bresenham en arithmétique entière 46
2.5. Algorithme de Bresenham général 47
2.6. Génération de la circonférence - Algorithme de Bresenham 51
2.7. Génération du trace - Génération de l'affichage 61
2.8. Génération du trace en temps réel 61
2.9. Codage des plages 68
2.10. Codage de cellules 71
2.11. Mémoires d'image 73
2.12. Adressage de la trame 76
2.13. Affichage d'un segment de droite 78
2.14. Affichage d'un caractère 80
2.15. Génération du trace d'une surface pleine 81
2.16. Remplissage d'un polygone 82
2.17. Balayage des polygones 83
2.18. Algorithme simple de la liste triée des côtes 86
2.19. Algorithmes de liste des côtes triés plus efficaces 88
2.20. Algorithme de remplissage de côté 94
2.21. Algorithme du drapeau 97
2.22. Algorithmes à germes 99
2.23. Algorithme à germe simple 101
2.24. Algorithme de remplissage à germe par ligne de balayage 105
2.25. Principe de l'anti-crénelage 110
2.26. Anti- crénelages simple d'une zone 113
2.27. Intégrale de convolution et anti-crénelage 118
2.28. Similigravure 122
2.29. Références 129
Chapitre 3. Fetrage 133
3.1. Fenêtrage en deux dimensions (2D) 134
3.2. Algorithme de Sutherland et Cohen de fenêtrage de ligne par subdivision 144
3.3. Algorithme de subdivision dichotomique 149
3.4. Fenêtrage généralisé de segment en 2D pour les contours convexes 156
3.5. Algorithme de Cyrus-Beek 161
3.6. Fenêtrage intérieur et extérieur 175
3.7. Identification des polygones convexes et détermination de la normale intérieure 176
3.8. Subdivision des polygones concaves 181
3.9. Fenêtrage en trois dimensions (3D) 182
3.10. Algorithme de subdivision dichotomique en 3D 186
3.11. Algorithme de Cyrus-Beek en 3D 188
3.12. Fenêtrage en coordones homogènes 194
3.13. Détermination de la normale intérieure et des ensembles convexes en 3D 196
3.14. Subdivision des volumes concaves 199
3.15. Fenêtrage de polygones 201
3.16. Fenêtrage entrant de polygones - Algorithme de Sutherland-Hodgman 203
3.17. Zones de fenêtrage concaves - Algorithme de Weiler-Atherton 215
3.18. Fenêtrage de caractères 222
3.19. Références 223
Chapitre 4. Suppression des parties cachées 225
4.1. Introduction 225
4.2. Algorithme de l'horizon flottant 227
4.3. Algorithme de Roberts 245
4.4. Algorithme de Warnock 286
4.5. Algorithme de Weiler-Atherton 310
4.6. Algorithme de subdivision pour les surfaces gauches 315
4.7. Algorithme du z-buffer 316
4.8. Algorithmes à liste de priorités 324
4.9. Algorithmes des lignes de balayage 333
4.10. Algorithme du z-buffer de la ligne de balayage 334
4.11. Algorithme de plage de ligne de balayage 339
4.12. Algorithmes de la ligne de balayage pour les surfaces gauches 349
4.13. Algorithme de suivi de rayon des surfaces visibles 354
4.14. Résu 366
4.15. Références 366
Chapitre 5. Le rendu 371
5.1. Introduction 371
5.2. Modèle élémentaire d'éclairement 374
5.3. Détermination de la normale à la surface 381
5.4. Détermination du vecteur réflexion 384
5.5. Ombrage de Gouraud 387
5.6. Ombrage de Phong 390
5.7 Modèle simple d'éclairement avec effets spéciaux 396
5.8. Modèle d'éclairement plus complet 398
5.9. Transparence 407
5.10. Ombres 414
5.11. Texture 425
5.12. Modèle d'éclairement global utilisant le suivi de rayon 437
5.13. Modèle d'éclairement plus complet utilisant le suivi de rayon 456
5.14. Progrès récents dans le rendu 458
5.15. Couleur 460
5.16. Références 491
Annexe A. Pseudo-code 495
Annexe B. Projets 501
Index 509
TOP
1 / 2 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !