Bonjour !
Je me pose des questions sur un problème simple.
Soit un nuage fini de n points dont on connaît les coordonnées cartésiennes. On souhaite déterminer le cercle (coordonnées cartésiennes du centre et rayon) enveloppe de ce nuage, c'est-à-dire le plus petit cercle qui englobe ses n points.
Une personne "lambda" répondrait qu'il suffit de déterminer les 2 points du nuage les plus éloignés. Ils constituent alors le diamètre du cercle enveloppe. C'est évidemment une erreur classique !
Je cherche la méthode LA PLUS RAPIDE pour résoudre ce problème (utile pour programmer un algorithme très rapide).
Par exemple, une méthode serait de calculer les longueurs de toutes les pairs de points, de sélectionner la pair la plus longue, de déterminer le cercle dont le diamètre est effectivement cette pair et de vérifier qu'il contient bien tous les points. Si c'est le cas, il est bien le cercle enveloppe recherché. Sinon, le cercle enveloppe passe NECESSAIREMENT par trois points. Dans ce cas alors on doit déterminer tous les triplets possible de points et calculer le cercle circonscrit au triangle qu'ils constituent ; en ne conservant que les cercles qui contiennent tous les autres points, le cercle enveloppe est celui qui a le plus petit rayon.
Cette méthode est TRES simple, mais elle peut s'avérer LONGUE. Je suis persuadé qu'il y en a de plus rapides !
A vous de jouer !
Merci !