Jean-marc :
(...)
Je comptais un peu sur l'initiateur de ce thread pour évaluer
l'algorithme (dont le fonctionnement est somme toute assez simple)
afin de justement en montrer les limites/imperfections, car je suis
sur qu'il en a, c'est une évidence.
Bonjour Jean-Marc
Je ne l'ai pas fait tout simplement parce que je ne l'ai pas évalué. En lisant les nombreuses contributions à ce fil, j'ai finalement opté pour une autre méthode qui m'a semblée plus adaptée à l'application dans laquelle elle doit s'intégrer, et ça semble marcher. C'est à dire trouver d'abord l'enveloppe convexe puis chercher des points intérieurs et leur projeté sur le segment d'enveloppe le plus proche, puis voir de combien de degrés d'angle le segment est dérouté vu de chaque extrémité, avec un paramètre de seuil maxi que l'utilisateur peut moduler. Plus quelques fioritures complémentaires comme le fait de séquencer tout ça en cherchant à chaque boucle le point le plus acceptable et reboucler tant qu'on en trouve un, plutôt que de boucler sur le simple parcours du contour (le résultat diffère) et puis évidemment vérifier à chaque fin de boucle si un point intérieur n'est pas sorti du nouveau contour (ça ne semble pas arriver avec mes exemples). L'algo est simple et suffisamment efficace pour cette application.
Merci quand même pour ce code que j'ai gardé dans mes archives au cas où. Si je tombe sur des cas problématiques, ça peut encore servir.
Bertrand