emanuele oops Inserito: 18 marzo 2008 Segnala Share 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! Link al commento Condividi su altri siti More sharing options...
Federico Milan Inserita: 19 marzo 2008 Segnala Share 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 Link al commento Condividi su altri siti More sharing options...
emanuele oops Inserita: 19 marzo 2008 Autore Segnala Share 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 Link al commento Condividi su altri siti More sharing options...
Federico Milan Inserita: 20 marzo 2008 Segnala Share 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 Link al commento Condividi su altri siti More sharing options...
emanuele.croci Inserita: 25 marzo 2008 Segnala Share 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 Link al commento Condividi su altri siti More sharing options...
emanuele oops Inserita: 26 marzo 2008 Autore Segnala Share 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 Link al commento Condividi su altri siti More sharing options...
emanuele.croci Inserita: 27 marzo 2008 Segnala Share Inserita: 27 marzo 2008 In bocca al lupo e... grazie per i complimenti!Ciao, Emanuele Link al commento Condividi su altri siti More sharing options...
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