Universit´e de Strasbourg
Master mention informatique, sp´ecialit´e ISI
1eann´ee, semestre 1
Ann´ee 2009-2010
Fondements et algorithmes de l’imagerie num´erique
TD2 Remplissage
Exercice 1
Ecrire en pseudo-C un algorithme tra¸cant un disque (donc constitu´e par les pixels `a
l’inerieur d’un cercle). On supposera que l’on dispose d’une fonction SegHori(x1,x2,y)
tra¸cant un segment horizontal. L’algorithme ne devra utiliser que des op´erations sur les
entiers.
Exercice 2
Soit un polygone Psans aucune propri´et´e particuli`ere. Il n’est ni r´egulier, ni convexe,
ni simple etc. On se propose de le remplir avec l’algorithme par balayage (scan-line).
1. Proposer des structures de donn´ees minimales initiales pour le sommet, pour l’arˆete
et pour le polygone. Ces structures pourront ˆetre modifi´ees au fur et `a mesure des
besoins des algorithmes.
2. On suppose qu’une ligne horizontale d’´equation y=Y0coupe les arˆetes du polygone
en npoints d’abscisse xj. Proposez une structure de donn´ees pour contenir ces inter-
sections. Puis donner un algorithme pour colorier les points de la droite horizontale
qui appartiennent `a l’int´erieur du polygone.
3. Soit un intervalle ]Yi, Yi+1[ dans lequel il n’y a aucun sommet de P. L’intersection
du polygone avec une ligne horizontale (scan-line) (appartenant `a cet intervalle)
appartient toujours `a un mˆeme sous-ensemble d’arˆetes appel´e ensemble des aetes
actives. On suppose que pour l’intervalle ]Yi, Yi+1[ cet ensemble des arˆetes actives est
connu, ainsi que les abscisses xjdes intersections de la ligne horizontale d’´equation
y=Yiavec les arˆetes actives. (cf figure ??).
Dans un premier temps, l’objectif est de calculer la valeur des xjsur une ligne `a
partir des valeurs des xjsur les lignes pr´ec´edentes.
Dans un deuxi`eme temps on tentera de faire cela sans recourir `a des calculs entre
nombres flottants.
A chaque fois, donner la structure de donn´ees utilis´ee pour les arˆetes actives et donner
les algorithmes de remplissage de la partie du polygone appartenant `a l’intervalle
[YiYi+1].
4. A pr´esent on cherche `a colorier tout le polygone. Proposer une structure de donn´ees
pour le polygone qui soit adapt´ee `a cette tˆache, et en d´eduire l’algorithme complet
pour le coloriage de tout le polygone.
1
Ymax
Ymin
Xmax
Yi
Yi+1
x1
Xmin x0x2=x3
Fig. 1 – Un intervalle [Yi, Yi+1] sur lequel les scan-lines intersectent le mˆeme ensemble
d’arˆetes. Cet ensemble d’arˆetes sera appel´e l’ensemble des arˆetes actives. Dans le cas de
cette figure il y a quatre arˆetes actives repr´esent´es par des traits ´epais. Au d´epart du calcul
on dispose donc des valeurs de x0,x1,x2et x3(avec x2=x3).
Dans tout cet exercice, vous avez droit `a tous les outils de manipulation des listes, (In-
sertion, Elimination, Parcours Triage, PremierElement, DernierElement, ProchainElement
etc.) ainsi que la fonction SegHori(x1,x2,y).
2
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 !