"Jean-Marc Bourguet" <jm@bourguet.org> a écrit dans le message de news:
pxb8wyjl7pu.fsf@news.bourguet.org...
"Jean-marc" <jm@nowhere.invalid> writes:
Bertrand Lenoir-Welter wrote:
Mais il a des caracteristiques peut-etre indesirables. Par exemple,
le contour trouve n'est pas le meme apres une rotation.
Ah... Effectivement ça risque de poser problème. Mais bon, c'est
toujours bon d'essayer pour avancer vers la solution.
En fait je corrige. Après quelques tests, il s'avère que le
contour est bien le même après une rotation, quelle que soit
la rotation.
J'aimerais bien une preuve plutot que des tests. Par exemple sur
(0, 2) (1, 1.25) (2, 0) (4, 2) (2, 4)
a lire ton algo j'ai l'impression qu'il va passer dans les cinq points
tandis que si tu fait une rotation de 45 degres, il ne va prendre que
les 4 sommets du carre.
pour être honnête, cet algo basé sur des tris en fonction des axes
principaux n'a guère de chance de faire mieux que de 'rogner autour des
coins'. du coup les rotations de 90° ont de forte chance de produire le même
résultat "by design"... mais les rotations aléatoires (en particulier celle
qui ne sont pas les angles habituels basés sur des multiples de 15° .
Le test de base d'un algorithm de ce genre est de fournir les mêmes données
après qu'elles ont subi une rotation de X degrés (étapes de 1 en 1 de 0 à
359), et de vérifier que les points de contour sont toujours les mêmes à la
rotation près.
Un algorithme à base de coordonnées polaires aurait plus de chance de
'tomber en marche'... mais bien sûr tout ce qui compte est d'avoir un
critère exprimé en terme d'angle et/ou de distance (ce qui revient à dire
aussi produit vectoriel et/ou cartésien), pas en fonction d'une projection
sur un ou N axes [N fini].
en espérant aider :)
Armel