vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 2010
-
28 déc. 2005 à 16:15
abtazer -
14 mars 2006 à 18:37
Bonjour
J'aimerais faire quelque chose de ce type:
Pour le moment je fais avec des segments de droite, mais peut être qu'on peut faire plus subtile.
Merci
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 28 déc. 2005 à 16:37
Shell> Je n'ai que les points en rouge (environ une dizaine) et pas d'équation, donc je peux pas.
J'ai regardé les courbes de langrange mais quand il y beaucoup de points ca fait n'importe quoi
Vous n’avez pas trouvé la réponse que vous recherchez ?
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 28 déc. 2005 à 16:42
Non non les pointillés on s'en fout. Une courbe normale ira. Le problème avec lagrange c'est que ca passe par les points, mais en dehors ca part un peu n'importe ou
Tu peux regarder avec cette applet:
http://www.ulg.ac.be/ltas-cao/info_etud/exlagrange.html
De plus, je veux que la tangente soit horizontale au points ou la courbe doit passer, ca n'est pas le cas des courbes de lagrange. Quant à Bezier, j'ai pas encore regardé...
DeAtHCrAsH
Messages postés2670Date d'inscriptionvendredi 25 janvier 2002StatutMembreDernière intervention 6 février 2013 28 déc. 2005 à 17:24
Avec les courbes paramétrés ayant un facteur lié au temps, ca pourrais donner des truc bizarre comme ca.
Cette courbe a forcément une raison d'etre logique, a moins que se soit un fou qui l'ai dessinée!
cosmobob
Messages postés700Date d'inscriptionmardi 30 décembre 2003StatutMembreDernière intervention27 janvier 20094 29 déc. 2005 à 00:56
salut,
j'ai trouvé une solution a partir de lagrange.
si Li est le i eme polynome de la base de lagrange, c-a-d pour rappel avec par exemple 3 points x1, x2, x3
L1(x) = (x-x2)(x-x3)/((x1-x2)(x1-x3))
L2(x) = (x-x1)(x-x3)/((x2-x1)(x2-x3))
L3(x) = (x-x1)(x-x2)/((x3-x1)(x3-x2))
Pour (x1, .., xn) fixés
Tu prends la base Bi(x) = Li ²(x) * exp( -Li(x) ² + 1)
alors si f(x) = somme( yi * Bi(x) ; y entre 1 et n)
tu as : f(xi) yi, et f ' (xi) 0 pour tout i (c-a-d tangente horizontale)
luhtor
Messages postés2023Date d'inscriptionmardi 24 septembre 2002StatutMembreDernière intervention28 juillet 20086 29 déc. 2005 à 11:05
C'est de la saloperie Lagrange pour faire ca.
D'après ton image, ca serait plutot des courbes du genre catmul rom,
mais ca donnera tout de meme pas la meme allure. J'avais fais une
source la dessus: http://www.cppfrance.com/code.aspx?id=33230
Mais parmi Bezier, B spline, et catmul rom. Seulement catmul rom fait
de l'interpolation, ca donnerait une courbe un peu semblable a ton
image, mais plus lisse, surtout au niveau de point de control.
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 29 déc. 2005 à 11:44
luhtor>Pourtant dans les liens donnés pas Urgo (que j'ai pas encore regardé en profondeur), le résultat semble assez bon
Par contre, sur la capture de ton code, la courbe ne ressemble pas vraiment a celle que je voudrais pour ces points