Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3060 connectés 

 


Dernière réponse
Sujet : Algo de remplissage d'une forme dont les points sont connus
LeGreg

-VDV- a écrit a écrit :

bah en fait
d'apres les limitations (a savoir, un point ne peut avoir plus de 2 voisins)
on peut sortir la regle suivante :
- on prend le premier point le plus en haut a gauche, celui d'en dessous est forcement vide ET a l'interieur :)
j'ai pas trouve de cas qui contredisaient cette regle avec la limitation imposee
donc c bon




 
Oui mais si tu oublies de preciser
les limitations dans l'enonce ;)
 
LEGREG


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
LeGreg

-VDV- a écrit a écrit :

bah en fait
d'apres les limitations (a savoir, un point ne peut avoir plus de 2 voisins)
on peut sortir la regle suivante :
- on prend le premier point le plus en haut a gauche, celui d'en dessous est forcement vide ET a l'interieur :)
j'ai pas trouve de cas qui contredisaient cette regle avec la limitation imposee
donc c bon




 
Oui mais si tu oublies de preciser
les limitations dans l'enonce ;)
 
LEGREG

Tentacle

-VDV- a écrit a écrit :

bah en fait
d'apres les limitations (a savoir, un point ne peut avoir plus de 2 voisins)
on peut sortir la regle suivante :
- on prend le premier point le plus en haut a gauche, celui d'en dessous est forcement vide ET a l'interieur :)
j'ai pas trouve de cas qui contredisaient cette regle avec la limitation imposee
donc c bon
 
niveau recursivite ca va, y'a juste un prob c que ca a tendance a revenir sur son chemin deja fait, donc je fais faire des nouvelles methodes genre "generer un tableau contenant l'interieur" et ce genre de connerie, vu la suite de l'exo c le plus simple et le plus efficace ;)  




 
donc toi tu veux plûtôt suivre le contour c'est ça? mais si il y a des croisements, tu fais comment ?
 
Pour le problème qu'il revient sur son chemin, il te suffit normalement de tester à chaque fois si le voisin que tu t'apprêtes à traiter (ou à mettre dans la file d'attente) est déjà remplis ou pas.

-VDV- bah en fait
d'apres les limitations (a savoir, un point ne peut avoir plus de 2 voisins)
on peut sortir la regle suivante :
- on prend le premier point le plus en haut a gauche, celui d'en dessous est forcement vide ET a l'interieur :)
j'ai pas trouve de cas qui contredisaient cette regle avec la limitation imposee
donc c bon
 
niveau recursivite ca va, y'a juste un prob c que ca a tendance a revenir sur son chemin deja fait, donc je fais faire des nouvelles methodes genre "generer un tableau contenant l'interieur" et ce genre de connerie, vu la suite de l'exo c le plus simple et le plus efficace ;)
LeGreg

Pitounet a écrit a écrit :

ben le premier soucis est de trouver un point à l'intérieur de ton polygone.  




 
J'ai l'impression qu'il risque d'avoir du mal a generaliser
s'il ne donne pas de point de depart
je suis a peu pres certain qu'on peut trouver
des cas ou ca pete si on ne donne pas de point a l'interieur de la surface a colorer.
(exemple limite du damier..)
 
LEGREG

trueslash par rapport à ta courbe fermée, il faut ausi trouver un moyen de modéliser laquelle des deux surfaces séparées par la curbe tu veux remplir
Pitounet pas de pb, tu as eu raison de préciser le pb de la récursivité...
Tentacle

Pitounet a écrit a écrit :

j parlais de récursivité parce que c'est la version la plus simple de l'algo mais c'est vrai qu'il peut etre plus efficace d'utiliser une file ou un pile.  




 
mais bon c'était destiné à VDV pour lui éviter une surprise désagréable lors de ses tests :D

 

[jfdsdjhfuetppo]--Message édité par Tentacle--[/jfdsdjhfuetppo]

Pitounet j parlais de récursivité parce que c'est la version la plus simple de l'algo mais c'est vrai qu'il peut etre plus efficace d'utiliser une file ou un pile.
Tentacle

Pitounet a écrit a écrit :

ben le premier soucis est de trouver un point à l'intérieur de ton polygone. Après cela, tu n'as plus qu'à écrire un algo récursif qui, à partir d'un point donné, le colorie et appelle la meme fonction pour ses voisins si ceux-ci ne sont pas encore coloriés.  




 
Par contre fait gaffe à la récursivité... certains languages ne supportent pas plus d'un certain nombre d'appel récursif... or pour le remplissable d'une figure tu risques d'en avoir un paquet.
Essaie plutôt de faire ça sans récursivité, genre au lieu d'appeler la fonction de remplissable tout de suite pour chaque voisin, mets ces voisins dans des files d'attentes dans lesquels chaque point sera traité quand celui d'avant aura finit d'être remplit.
 
À par ça, il y a peut-être d'autre algorithmes pour ça :)

Pitounet ben le premier soucis est de trouver un point à l'intérieur de ton polygone. Après cela, tu n'as plus qu'à écrire un algo récursif qui, à partir d'un point donné, le colorie et appelle la meme fonction pour ses voisins si ceux-ci ne sont pas encore coloriés.
-VDV- On a des points dans un tableau, ils donnent une forme
Genre ca : http://www.v-stuff.net/perso/POCOOL.PNG  
 
Maintenant comment on fait pour remplir l'interieur de la figure sans prob...
et me sortez pas on remplit entre 2 points sur une meme ligne vu qu'il y a, ne serait-ce que dans mon exemple, des cas ou ca ne marche pas...

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)