emanuele oops Inserito: 18 marzo 2008 Segnala Inserito: 18 marzo 2008 Mi sono bloccato...non riesco a risolvere in modo soddisfacente i calcoli necessari per convertire da dxf in gcode le curvenella rappresentazione degli archi il dxf restituisce la tangente di alfa/2 e il gcode richiede il comando G2/3 con il raggio o in alternativa le coordinate del centro dell'arco (I & J)scopro dopo tanto tempo che non tutti i controller accettano il G2/3 con il raggio (perche per valori di angolo prossimi a 180 e 360 gradi la precisione comincia ad essere critica e anche se raramente ho avuto un blocco macchina per un errore di percorso)in effetti il problema e' questo:conoscendo le coord. del punto A e B estremi dell'arco, il raggio e l'angolo, come ricavare in pochi semplici e puliti passaggi, le coordinate del centro.meglio ancora: determinare le coordinate di intersezione tra una retta e una circonferenzaqualche genio che mi aiuta ?grazie!
Federico Milan Inserita: 19 marzo 2008 Segnala Inserita: 19 marzo 2008 Il forum non è specifico di programmazione o di formati grafici!Per quanto riguarda l'intersezione di una retta con una circonferenza, i punti si trovano ponendo a sistema l'equazione della retta e l'equazione della circonferenza, per esempio y=R1x+R1 x^2+y^2+C1*x+C2*y+C3=0che alla fine è una equazione di sencondo grado dove si dovranno tener solo le soluzioni fisicamente valide.ciao
emanuele oops Inserita: 19 marzo 2008 Autore Segnala Inserita: 19 marzo 2008 (modificato) Grazie Federico per il tuo interessamentonon pensavo di invadere un forum destinato ad altro...comunque c'ero gia' arrivato a questa soluzione, il problema era su quale procedura usare... ma non importa, visto che ho sconfinato!Non trovo dove chiudere la discussione Modificato: 19 marzo 2008 da emanuele oops
Federico Milan Inserita: 20 marzo 2008 Segnala Inserita: 20 marzo 2008 Il confine non è rigido, di matematica si tratte, purtroppo l'applicazione di comandi esula e con grande probabilità potresti non trovare il corretto supporto, viceversa se posti sul forum corretto troverai più esperti della materia che potrebbero aiutarti maggiormente.ciao
emanuele.croci Inserita: 25 marzo 2008 Segnala Inserita: 25 marzo 2008 Ciao,pensando di farti cosa gradita, ti posto una subroutine Visual Basic da me scritta qualche anno fa....In ingresso passi i punti A e B per cui deve passare il tuo arco + il Raggio R richiestoIn uscita ti dà (Xc; Yc), coordinate del centro del cerchio.Utilizza il suo interno 2 ulteriori subroutine molto facili, DISTANZA (la distanza tra 2 punti usando il teorema di Pitagora) e ANGOLO (l'angolo in radianti tra la retta AB e l'asse delle ascisse).Se vuoi posso postarle, comunque sono molto banali...Ciao, EmanueleP.S.: il metodo usato è: Nel triangolo isoscele ABC (C=centro del cerchio), trovo l'angolo CAB e, da qui, trovo l'angolo formato tra AC e l'asse delle ascisse.da qui, sapendo che la distanza tra A e C è pari al raggio, avrò cheXc=Xa + R * cos (angoloCA)= Xa + AC * cos(angoloCA)evidentemente AC=R
emanuele oops Inserita: 26 marzo 2008 Autore Segnala Inserita: 26 marzo 2008 pensavo di aver risolto (con una equazione di 2° grado) ed avevo dimenticato la richiesta di aiuto...ma quando ho visto la tua soluzione sono rimasto entusiasta dalla semplicita' e bellezza delle poche righe di programma!appena posso provero' la tua soluzione e ti faro' saperegrazie e ti faro' sapere
emanuele.croci Inserita: 27 marzo 2008 Segnala Inserita: 27 marzo 2008 In bocca al lupo e... grazie per i complimenti!Ciao, Emanuele
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora