Equazione dei bordi di una linea di spessore non nullo
Salve a tutti, questo è il mio primo messaggio.
Ho un problema pratico che si traduce in un esercizio di geometria analitica.
Ho una curva parametrica costituita essenzialmente da due equazioni di terzo grado. Immaginate che questa linea abbia uno spessore non nullo, diciamo \(t\). Ho bisogno di conoscere l'equazione parametrica dei "bordi" della linea.
Faccio un esempio per essere più chiaro. Se la mia curva è la circonferenza nell'origine di raggio \(r=2\) e se \(t=1\), allora i due bordi saranno le circonferenze nell'origine di raggio \(r=1,5\) ed \(r=2,5\).
Io ho pensato di derivare le due equazioni parametriche per ottenere il versore tangente alla curva; da questo ottenere l'equazione della retta tangente. Trovare le due parallele ad essa a distanza \(\frac{t}{2}\) ed integrare per avere le due curve, ma ho diversi dubbi, perciò non so se sia la strada giusta.
1) Se \(u\) è il parametro che uso per la curva, posso usare lo stesso parametro per le equazioni parametriche della retta, oppure devo cambiare parametro?
2) Quando integro avrò due funzioni definite a meno di una costante arbitraria, come faccio ad identificare la costante?
Potete indirizzarmi meglio?
Grazie
Edit: probabilmente al punto 2 posso rispondermi da solo. Ho bisogno di conoscere un punto delle curve del bordo. Per fare questo, scelto arbitrariamente un punto della mia curva e tracciata da esso la normale alla stessa, devo determinare sulla retta i punti a distanza \(\frac{t}{2}\) dalla curva data. Questi punti appartengono ai due bordi.
Ho un problema pratico che si traduce in un esercizio di geometria analitica.
Ho una curva parametrica costituita essenzialmente da due equazioni di terzo grado. Immaginate che questa linea abbia uno spessore non nullo, diciamo \(t\). Ho bisogno di conoscere l'equazione parametrica dei "bordi" della linea.
Faccio un esempio per essere più chiaro. Se la mia curva è la circonferenza nell'origine di raggio \(r=2\) e se \(t=1\), allora i due bordi saranno le circonferenze nell'origine di raggio \(r=1,5\) ed \(r=2,5\).
Io ho pensato di derivare le due equazioni parametriche per ottenere il versore tangente alla curva; da questo ottenere l'equazione della retta tangente. Trovare le due parallele ad essa a distanza \(\frac{t}{2}\) ed integrare per avere le due curve, ma ho diversi dubbi, perciò non so se sia la strada giusta.
1) Se \(u\) è il parametro che uso per la curva, posso usare lo stesso parametro per le equazioni parametriche della retta, oppure devo cambiare parametro?
2) Quando integro avrò due funzioni definite a meno di una costante arbitraria, come faccio ad identificare la costante?
Potete indirizzarmi meglio?
Grazie
Edit: probabilmente al punto 2 posso rispondermi da solo. Ho bisogno di conoscere un punto delle curve del bordo. Per fare questo, scelto arbitrariamente un punto della mia curva e tracciata da esso la normale alla stessa, devo determinare sulla retta i punti a distanza \(\frac{t}{2}\) dalla curva data. Questi punti appartengono ai due bordi.
Risposte
Per indirizzarti meglio bisognerebbe saperne di più: ad esempio, non ho idea del perché tu voglia "derivare due equazioni parametriche per ottenere il versore tangente alla curva". Questa curva che roba è? Da dove viene? Come è fatta?
Comunque questo problema, nelle tecnologie di taglio o fresatura 2D, è noto come tool radius compensation o, in Italiano, compensazione raggio utensile. Se cerchi queste parole chiave su google troverai parecchio materiale.
Comunque questo problema, nelle tecnologie di taglio o fresatura 2D, è noto come tool radius compensation o, in Italiano, compensazione raggio utensile. Se cerchi queste parole chiave su google troverai parecchio materiale.
Scusa, mi era sfuggita la frase dove dici che la curva è parametrica di terzo grado, quindi
$x(\tau)=x_0+x_1 \tau + x_2 \tau^2 + x_3 \tau^3$
$y(\tau)=y_0+y_1 \tau + y_2 \tau^2 + y_3 \tau^3$
è questo che intendi, vero?
Beh, allora temo che i metodi usati per la compensazione raggio utensile ti saranno di poco aiuto, perché sono studiati per percorsi costituiti principalmente da tratti rettilinei e archi di circonferenza. E comunque anche così il problema non è banale; non basta, per ogni punto della curva, spostarsi di $\frac{t}{2}$ lungo la normale, perché in zone di elevata curvatura otterresti una curva che interseca se stessa e/o la curva di partenza.
Dubito che esista una soluzione chiusa, probabilmente devi generare la curva spostandoti di $\frac{t}{2}$ lungo la normale e poi andare a ricercare i punti in cui la curva interseca se stessa e/o la curva di partenza e tagliare via i tratti compresi tra questi punti. Il risultato può essere quindi una curva definita a tratti e con punti angolosi.
Nel trattamento numerico di immagini esiste la morphological dilation che sarebbe proprio quello che cerchi, solo che riguarda curve costituite da sequenze di pixel, non curve parametriche. Vedi ad esempio http://en.wikipedia.org/wiki/Mathematical_morphology
$x(\tau)=x_0+x_1 \tau + x_2 \tau^2 + x_3 \tau^3$
$y(\tau)=y_0+y_1 \tau + y_2 \tau^2 + y_3 \tau^3$
è questo che intendi, vero?
Beh, allora temo che i metodi usati per la compensazione raggio utensile ti saranno di poco aiuto, perché sono studiati per percorsi costituiti principalmente da tratti rettilinei e archi di circonferenza. E comunque anche così il problema non è banale; non basta, per ogni punto della curva, spostarsi di $\frac{t}{2}$ lungo la normale, perché in zone di elevata curvatura otterresti una curva che interseca se stessa e/o la curva di partenza.
Dubito che esista una soluzione chiusa, probabilmente devi generare la curva spostandoti di $\frac{t}{2}$ lungo la normale e poi andare a ricercare i punti in cui la curva interseca se stessa e/o la curva di partenza e tagliare via i tratti compresi tra questi punti. Il risultato può essere quindi una curva definita a tratti e con punti angolosi.
Nel trattamento numerico di immagini esiste la morphological dilation che sarebbe proprio quello che cerchi, solo che riguarda curve costituite da sequenze di pixel, non curve parametriche. Vedi ad esempio http://en.wikipedia.org/wiki/Mathematical_morphology
Ti ringrazio per la risposta. Nel frattempo mi ero accorto che il metodo che avevo immaginato non va bene e stavo provando un altro metodo (che penso sia quello che suggerisci tu), cioè trovare la normale alla curva e intersecarla con una circonferenza di raggio \(\frac{t}{2}\). In questo modo mi ero già accorto, provando su una parabola, che se la curvatura è elevata non funziona. Comunque credo che nel tratto che mi interessa (ancora non ho calcolato i coefficienti delle equazioni parametriche) la curvatura sia piuttosto bassa, perciò non dovrei avere problemi.
Prima di procedere, mi guarderò i riferimenti che mi hai dato. Infatti mi meravigliavo di non trovare niente in rete, probabilmente perché non sapevo cosa cercare.
Grazie
Prima di procedere, mi guarderò i riferimenti che mi hai dato. Infatti mi meravigliavo di non trovare niente in rete, probabilmente perché non sapevo cosa cercare.
Grazie