Salut,
Au niveau calcul exact, ça semble mal barré : si tu prend P0 et P2 proche l'un de l'autre et P1 très éloigné, ta courbe fait quasiment un "aller retours". Et si tu fait la même chose avec l'autre courbe mais en tournant de 90°, tu constate qu'il peut y avoir jusqu'à 4 points d'intersections entre tes deux courbes.
Donc quasi surement une équation polynomiale de degré 4 à résoudre et résoudre ce type de truc de façon exacte, c'est bien la m... (la seule formule "théorique", c'est celle de Ferrari qui n'a aucun intérêt numériquemet parlant)
Donc faudra forcément faire autrement (dichotomie ou méthode des tagentes de Newton ou... autre chose...) (*)
Concernant l'équation en elle même, c'est on ne peut plus simple : si tu écrit que les abscisses et les ordonnées de tes deux points doivent être les mêmes (et que tu développe les polynômes du second degré en t et en s), ça te fait un truc du style
et
où a,b,...f,A,B,...,F sont des constantes et où s et t sont les inconnues.
Si tu fait
fois la première équation moins
la seconde, ça élimine les
et ça permet d'exprimer
sous la forme
(sauf cas exceptionnel où le coefficient en
est lui aussi nul) et si tu réinjecte ça dans une des deux équation de départ, ça te fait bien comme prévu une équation du 4em degré et
(dont tu cherche les solutions uniquement entre 0 et 1 et il faudra vérifier que
est lui aussi entre 0 et 1)
(*) Un truc pas con du tout à utiliser dans ce type de contexte, c'est le
Théorème de Sturm qui permet très rapidement (et très facilement au niveau informatique) de savoir combien de racines réelle possède ton polynôme entre 0 et 1. Ensuite, une fois ce nombre connu, il n'y à "plus qu'à" les localiser.