Sviluppo di uno strumento di disegno di base con linee, curve [chiuso]

0

Sto sviluppando disegni CAD per CNC software per codici macchina. Questi CNC hanno una sorta di set di istruzioni che riceve parametri, ecc. Per fare un po 'di lavoro bla bla. Sono abbastanza a mio agio con il lato CNC; ma all'improvviso mi viene chiesto di creare un software che ti consenta di "disegnare" e di convertire il disegno nel codice della macchina. Sono VERAMENTE preoccupato per la parte "draw". Devo andare per lo sviluppo OpenGL? o c'è un modo più semplice di fare le cose? Quindi, per riassumere, il mio problema: creare una mini piattaforma CAD (è tutto 2D e non ho bisogno di preoccuparmi di forme complesse oltre alle linee, alcune curve) Ma devo fornire all'utente gli strumenti per realizzare questi "disegni semplici"

Per favore dammi un consiglio tecnico e un vantaggio.

    
posta ritwik 05.07.2011 - 09:58
fonte

1 risposta

2

Non molte domande qui. OpenGL è un overkill. Potrebbe fornire una bella funzionalità per l'anteprima del lavoro finale, ma sicuramente non è necessario per il disegno.

Pensa a questa cosa come ad un editor grafico dei dati CNC. Tutto ciò che dovresti essere in grado di fare con il CNC dovrebbe essere fattibile qui. Può cambiare il numero di giri del mandrino? Rendilo disponibile per essere collegato a un nodo. Può cambiare la velocità del movimento? Rendilo disponibile. Inizia con questo semplice set di funzionalità - rappresentazione grafica dell'attività, modificabile graficamente. "Aggiungi nodo, rimuovi nodo, sposta nodo, cancella nodo, imposta il livello dell'asse Z, le proprietà del nodo (compresi i comandi speciali come la velocità del mandrino)." Utilizza alcune (eventuali) librerie gfx per visualizzarle tutte.

Una volta che hai iniziato ad aggiungere cose automatiche: le curve di bezier si sono auto-trasformate in serie di linee, cerchi, forme di connessione automatica (alzare il mandrino, muoversi alla massima velocità, mandrino più basso), importare Corel / SVG, sfalsare dalla forma ( questo è importante: si disegna la forma che si desidera ottenere, quindi si sposta il percorso attuale verso l'esterno o verso l'interno in base allo spessore dello strumento di taglio), l'ottimizzazione per gli strumenti conici (un argomento da considerare, gli strumenti conici consentono un'estrema flessibilità), importare di bitmap in scala di grigi come progetti 3D, stepping di profondità (importante - convertire una traccia in più tracce a varie profondità, aumentando la profondità Z ad ogni passo), area di riempimento (per rimuovere una grande quantità di materiale), ottimizzare la forma per più strumenti (prima grezzo, quindi preciso) e così via.

(un punto interessante è che potrebbe essere necessario implementare un algoritmo "Viaggiatore" in un determinato punto: poiché lo strumento grezzo ha rimosso gran parte del materiale, ci sono molte isole separate per lo strumento preciso da "visitare", e possono essere elaborati in ordine arbitrario, quindi collegarli in base al problema del venditore ridurrà al minimo il tempo di viaggio degli strumenti).

    
risposta data 05.07.2011 - 10:47
fonte

Leggi altre domande sui tag