Re: Courbe de Bezier cubique

Liste des GroupesRevenir à fs maths 
Sujet : Re: Courbe de Bezier cubique
De : kurtzlepirate (at) *nospam* free.fr (kurtz le pirate)
Groupes : fr.sci.maths
Date : 29. Jul 2024, 10:07:20
Autres entêtes
Organisation : Compagnie de la Banquise
Message-ID : <66a75bcf$0$7515$426a74cc@news.free.fr>
References : 1 2 3
User-Agent : Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:78.0) Gecko/20100101 Thunderbird/78.14.0
On 28/07/2024 21:08, Olivier Miakinen wrote:
Le 28/07/2024 à 18:50, je répondais au pirate :
>
  B(t) = P0(1-t)^3 + 3P1t(1-t)^2+3P2t^2(1-t)+P3t^3
  avec t [0,1]
  <https://fr.wikipedia.org/wiki/Courbe_de_B%C3%A9zier>
>
Calculer /le/ t pour un x, c'est à priori impossible dans le cas
général. En effet, pour la plupart des x de R il n'y a aucun t qui
corresponde, alors que pour certains x il peut y avoir plusieurs t.
À priori je dirais qu'il peut exister jusqu'à trois valeurs de t
pour le même x dans le cas des courbes de Bézier cubiques, avec
donc trois y différents pour ce même x.
 
Pour prendre un exemple simple, soient :
 P3 = -P0 = (1,1)
 P1 = -P2 = (a,-1)
 
On a alors :
 x(t) = (6a+2)t³ - (9a+3)t² + (3a+3)t - 1
 y(t) = -4t³ + 6t² - 1
 
... que l'on peut factoriser :
 x(t) = (2t-1)((3a+1)t² - (3a+1)t + 1)
 y(t) = -(2t-1)(2t² - 2t - 1)
 
La courbe passe évidemment par le point (0,0) quand t = 1/2. Il reste
à savoir s'il y a d'autres valeurs de t pour lesquelles x = 0 (alors
que sur [0,1], y(t) ne s'annule qu'en t = 1/2). Tout dépend de la valeur
de a.
 
Étudions la fonction g(t) = ((3a+1)t² - (3a+1)t + 1). Le discriminant
delta vaut (3a+1)² - 4(3a+1) = 3(a-1)(3a+1)
 
Si a vaut 1, x(t) = (2t-1)(4t²-4t+1) = (2t-1)³, et t=1/2 est une racine
triple de x(t).
 
Si a est compris entre 0 et 1, g(t) ne s'annule jamais, et on peut
effectivement trouver un seul 't' correspondant à x = 0 (et même à
tout x entre -1 et +1).
 
Mais si a est plus grand que 1, alors il existe trois 't' différents et
trois 'y' différents pour x = 0.

Oui c'est tout à fait ça, et c'est ce que je veux éviter.


CQFD. Ta demande de départ était bien illusoire.

Pas tant que ça. J'ai trouvé une solution beaucoup plus simple.
Vu ma réponse précédente, une simple itération en partant de 0 me donne
ma valeur t pour mon x et donc ma valeur y...

CQFD ;)






--
kurtz le pirate
compagnie de la banquise

Date Sujet#  Auteur
28 Jul 24 * Courbe de Bezier cubique21kurtz le pirate
28 Jul 24 +* Re: Courbe de Bezier cubique14Olivier Miakinen
28 Jul 24 i+* Re: Courbe de Bezier cubique11Olivier Miakinen
29 Jul 24 ii+- Re: Courbe de Bezier cubique1kurtz le pirate
29 Jul 24 ii`* Re: Courbe de Bezier cubique9Michel Talon
29 Jul 24 ii +* Re: Courbe de Bezier cubique3efji
30 Jul 24 ii i`* Re: Courbe de Bezier cubique2Michel Talon
31 Jul 24 ii i `- Re: Courbe de Bezier cubique1efji
30 Jul 24 ii `* Re: Courbe de Bezier cubique5Michel Talon
31 Jul 24 ii  `* Re: Courbe de Bezier cubique4efji
31 Jul 24 ii   `* Re: Courbe de Bezier cubique3Olivier Miakinen
31 Jul 24 ii    `* Re: Courbe de Bezier cubique2Michel Talon
31 Jul 24 ii     `- Re: Courbe de Bezier cubique1Olivier Miakinen
29 Jul 24 i`* Re: Courbe de Bezier cubique2kurtz le pirate
29 Jul 24 i `- Re: Courbe de Bezier cubique1Olivier Miakinen
29 Jul 24 `* Re: Courbe de Bezier cubique6efji
29 Jul 24  +* Re: Courbe de Bezier cubique2Michel Talon
29 Jul 24  i`- Re: Courbe de Bezier cubique1efji
29 Jul 24  +* Re: Courbe de Bezier cubique2robby
29 Jul 24  i`- Re: Courbe de Bezier cubique1efji
30 Jul 24  `- Re: Courbe de Bezier cubique1kurtz le pirate

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal