Retta che interseca cerchio
ciao a tutti
sto provando a fare un programma, per una macchina cnc, che mi genera delle coordinate sul piano cartesiano
devo generare delle coordinate x,y sul perimetro di un cerchio, praticamente devo dividere il cerchio in tot parti uguali ed individuare le coordinate x,y dei i punti di contatto fra un segmento e l'altro.
ricordandomi gli studi da itis di molti anni fa mi sono ricordato che è possibile trovare le coordinate dell'intersezione tra una retta ed un cerchio
sia la retta che il cerchio hanno origine in 0,0
l'inclinazione della retta la ottengo dando l'angolo alla funzione (360/segmenti)
le formule che ho trovato in rete sono; scusate non sono molto pratico nello scrivere le formule:
ang= 360/segmenti
r=raggio del cerchio
sqrt=radice quadrata
tan(ang)x-y=0 per la retta
x^2+y^-r^=0 per il cerchio
mettendole a sistema e raggruppando la y (per comodita?) ottengo
x=sqrt{r^2/[1+tan(ang)]}
e quindi sostituendo il valore di x nell'espressione sotto ottengo la y
y=tan(ang)x
se faccio il tutto graficamente sia con la calcolatrice di windows, sia disegnando con cad il tutto torna
se faccio i conti con la calcolatrice di windows i valori non tornano
dove sbaglio?
ciao
Roberto
sto provando a fare un programma, per una macchina cnc, che mi genera delle coordinate sul piano cartesiano
devo generare delle coordinate x,y sul perimetro di un cerchio, praticamente devo dividere il cerchio in tot parti uguali ed individuare le coordinate x,y dei i punti di contatto fra un segmento e l'altro.
ricordandomi gli studi da itis di molti anni fa mi sono ricordato che è possibile trovare le coordinate dell'intersezione tra una retta ed un cerchio
sia la retta che il cerchio hanno origine in 0,0
l'inclinazione della retta la ottengo dando l'angolo alla funzione (360/segmenti)
le formule che ho trovato in rete sono; scusate non sono molto pratico nello scrivere le formule:
ang= 360/segmenti
r=raggio del cerchio
sqrt=radice quadrata
tan(ang)x-y=0 per la retta
x^2+y^-r^=0 per il cerchio
mettendole a sistema e raggruppando la y (per comodita?) ottengo
x=sqrt{r^2/[1+tan(ang)]}
e quindi sostituendo il valore di x nell'espressione sotto ottengo la y
y=tan(ang)x
se faccio il tutto graficamente sia con la calcolatrice di windows, sia disegnando con cad il tutto torna
se faccio i conti con la calcolatrice di windows i valori non tornano
dove sbaglio?
ciao
Roberto
Risposte
Forse scambi gradi con radianti ...
grazie della risposta
potresti argomentare?
potresti argomentare?
Di solito le calcolatrici sono impostate per misurare gli angoli in radianti e un angolo giro misura $2pi$ radianti, oppure $360$ gradi. Tu hai impostato il problema usando l’angolo in gradi. Controlla che anche la calcolatrice lo abbia in gradi.
se disegno con rappresentazione grafica della calcolatrice di windows una retta a 60° passante per 0,0
tan(60)x=y
ed un cerchio raggio 100 con centro in 0,0
x^2+y^2=100^2
graficamente mi da come punto di intersezione nel primo quadrante
x=50 ed y=86,6
stessa cosa se disegno con il cad un cerchio ed una retta con pari caratteristiche
se no ho sbagliato qualcosa tan(60) => 1,73
sostituendo nelle espressioni che ho ricavato dal sistema
x = sqrt{r^2/[1+tan(ang)]} = sqrt{100^2/[1+1,73]} = 60,5
e quindi sostituendo il valore di x nell'espressione sotto ottengo la y
y = tan(ang)x = 1,73 * 60,5 = 104,97
cosa sto sbagliando?
tan(60)x=y
ed un cerchio raggio 100 con centro in 0,0
x^2+y^2=100^2
graficamente mi da come punto di intersezione nel primo quadrante
x=50 ed y=86,6
stessa cosa se disegno con il cad un cerchio ed una retta con pari caratteristiche
se no ho sbagliato qualcosa tan(60) => 1,73
sostituendo nelle espressioni che ho ricavato dal sistema
x = sqrt{r^2/[1+tan(ang)]} = sqrt{100^2/[1+1,73]} = 60,5
e quindi sostituendo il valore di x nell'espressione sotto ottengo la y
y = tan(ang)x = 1,73 * 60,5 = 104,97
cosa sto sbagliando?
naturalmente con tan(45) => 1 il tutto funziona
"bobwolf":
...
se no ho sbagliato qualcosa tan(60) => 1,73
sostituendo nelle espressioni che ho ricavato dal sistema
x = sqrt{r^2/[1+tan(ang)]} = sqrt{100^2/[1+1,73]} = 60,5
e quindi sostituendo il valore di x nell'espressione sotto ottengo la y
y = tan(ang)x = 1,73 * 60,5 = 104,97
cosa sto sbagliando?
Non si capisce che formule usi per trovare $x$ e $y$. E' molto più semplice di così:
$x = r*cos (alpha)$
e
$y = r * sin (alpha)$
Con $alpha = 60°$ hai:
$x = 50$ e $y = 50 * sqrt(3) = 86.60$
grazie mille
hai sicuramente trovato dove sbagliavo...
non ci avevo capito nulla
infatti nella testa c'era qualcosa che mi suonava strano
ero arrivato a quelle formule partendo da una ricerca google che mi aveva dato questa pagina
https://www.****.it/domande-a-rispos ... renza.html
ho seguito i link per rinfrescarmi la memoria su retta e cerchio... ed ho tratto le mie conclusioni... palesemente sbagliate
dopo provo a simulare con diversi angoli... solo per scrupolo mio
grazie ancora per l'aiuto
ciao
Roberto
hai sicuramente trovato dove sbagliavo...
non ci avevo capito nulla
infatti nella testa c'era qualcosa che mi suonava strano
ero arrivato a quelle formule partendo da una ricerca google che mi aveva dato questa pagina
https://www.****.it/domande-a-rispos ... renza.html
ho seguito i link per rinfrescarmi la memoria su retta e cerchio... ed ho tratto le mie conclusioni... palesemente sbagliate
dopo provo a simulare con diversi angoli... solo per scrupolo mio
grazie ancora per l'aiuto
ciao
Roberto