2010-04-02 14 views
5

Ho una curva quadratica di Bézier e voglio calcolare la pendenza della tangente in un dato punto. Ad esempio, lascia che sia il punto centrale della curva quadratica di bezier, quindi t = 0.5 (vedi il link sotto per un'immagine di questo). Ho calcolato la prima derivata della formula per la curva quadratica di Bezier; comunque ottengo 400 come valore per la pendenza, anche se dovrebbe essere 0. Forse sto usando la prima derivata in modo sbagliato? So che potrei anche calcolare le tangenti usando le funzioni trigonometriche; comunque mi piacerebbe farlo usando la prima derivata, non dovrebbe essere possibile? Grazie per qualsiasi suggerimento!Curva quadratica di Bezier: Calcola tangente

Per chiarimenti/si prega di notare: mi interessa un modo generale per ottenere la pendenza in un punto dato arbitrario su una curva bezier quadratica, non solo per ottenere la tangente nel punto iniziale e finale.

una foto del mio problema compreso il testo di cui sopra: http://cid-0432ee4cfe9c26a0.skydrive.live.com/self.aspx/%c3%96ffentlich/Quadratic%20Bezier%20Curve.pdf

ringrazio molto per qualsiasi suggerimento!

+1

Il collegamento sembra essere morto. Sarebbe bello se potessi tradurre la tua formula nella domanda stessa. – Soviut

risposta

4

Utilizzando la formula per B'(t), valutato in t=1/2, otteniamo

B'(1/2) = -P0 + P2 

Dallo sguardo del grafico, P0 = (0,0) e P2 = (400,0). So

Questa è la "velocità" di un punto che viaggia lungo B (t) at = 1/2.

(400,0) è un vettore orizzontale, con magnitudo 400.

Quindi tutto è come dovrebbe essere. Dal B '(t) è orizzontale, esso ha "pista" 0.

+0

grazie mille per la tua risposta, ma la "t" è sempre cancellata dall'equazione 2t * (0) +400 perché è moltiplicata con 0. quindi la pendenza in ogni punto sarebbe 0, che non è vero !? –

+0

@stefan: È vero che il componente x di B '(t) è sempre 400, ma questo non è vero per il componente y. Prova y0 = 0, y1 = 100, y2 = 0 per le componenti y di P0, P1, P2 e calcolo y '(t). Dovresti trovare y '(t) dipende da t. – unutbu

+0

@ Dal momento che la pendenza aumenta rispetto alla corsa, la pendenza non è x '(t), ma piuttosto y' (t)/x '(t). – unutbu

Problemi correlati