Algoritmi
-
- Junior
- Messaggi: 108
- Iscritto il: sabato 18 novembre 2006, 14:12
- Località: Romano di Lombardia (BG)
Algoritmi
-
- Senior
- Messaggi: 733
- Iscritto il: venerdì 29 maggio 2009, 8:43
- Località: Ferrara
- Contatta:
Re: Algoritmi
Per farti capire la complessita che c'e' nella risposta alla tua domanda suggerisco questo testo:
"Computer Graphics: Principles and Practice" che e' la fonte dalla quale partire per approfondire.
lo trovi anche qui :http://www.abebooks.it/9780201848403/Co ... 848406/plp
In particolare i capitoli dove parla dei device di output e dei concetti di Device, Viewport
e trasformazione di coordinate.
In prima approssimazione ti posso dire che, se ho capito bene, quello che vuoi ottenere e' una funzione piuttosto sofisticata di un CAD vero e proprio. Tutt'altro che banale da realizzare partendo da zero.
Sandro
"Computer Graphics: Principles and Practice" che e' la fonte dalla quale partire per approfondire.
lo trovi anche qui :http://www.abebooks.it/9780201848403/Co ... 848406/plp
In particolare i capitoli dove parla dei device di output e dei concetti di Device, Viewport
e trasformazione di coordinate.
In prima approssimazione ti posso dire che, se ho capito bene, quello che vuoi ottenere e' una funzione piuttosto sofisticata di un CAD vero e proprio. Tutt'altro che banale da realizzare partendo da zero.
Sandro
Ex arduis perpetuum nomen.
- Dragonfly
- Newbie
- Messaggi: 41
- Iscritto il: mercoledì 16 luglio 2008, 14:40
- Località: Vercelli
Re: Algoritmi
Dipende da molti fattori tra cui:
1) da come disegni
2) da quale velocità vuoi ottenere
3) quali enti stai disegnando
è ovvio che poi devi avere un'ottima dimestichezza con la matematica...
Spiega che vediamo cosa fare
1) da come disegni
2) da quale velocità vuoi ottenere
3) quali enti stai disegnando
è ovvio che poi devi avere un'ottima dimestichezza con la matematica...
Spiega che vediamo cosa fare
-
- Junior
- Messaggi: 108
- Iscritto il: sabato 18 novembre 2006, 14:12
- Località: Romano di Lombardia (BG)
Re: Algoritmi
Allora forse è meglio essere più precisi.....intanto per la parte grafica uso la libreria opengl..
allora ho una lista di entità che posso disegnare questa lista è definita tramite una classe Figura .....e da questa classe derivano per ereditarietà le classi linea punto rettangolo etc etc...
il primo algoritmo che mi interessa sviluppare è quello di selezione...quindi se io clikko in un punto di coordinate X1 Y1
per sapere se ho cliccato su una figura devo scorrere tutta la lista degli oggetti renderizzati e calcolare la distanza tra il punto X1 Y1 e vedere se questa è per esempio minore di 3 pixel se è cosi ho cliccato su quell'oggetto e quindi lo segno come selezionato....ora l'algoritmo cosi funziona solo che magari rende lento il tutto sono sicuro che esistono algoritmi più efficienti....e quindi vorrei documentarmi su questi algoritmi.....la matematica non è un problema...
allora ho una lista di entità che posso disegnare questa lista è definita tramite una classe Figura .....e da questa classe derivano per ereditarietà le classi linea punto rettangolo etc etc...
il primo algoritmo che mi interessa sviluppare è quello di selezione...quindi se io clikko in un punto di coordinate X1 Y1
per sapere se ho cliccato su una figura devo scorrere tutta la lista degli oggetti renderizzati e calcolare la distanza tra il punto X1 Y1 e vedere se questa è per esempio minore di 3 pixel se è cosi ho cliccato su quell'oggetto e quindi lo segno come selezionato....ora l'algoritmo cosi funziona solo che magari rende lento il tutto sono sicuro che esistono algoritmi più efficienti....e quindi vorrei documentarmi su questi algoritmi.....la matematica non è un problema...
- Dragonfly
- Newbie
- Messaggi: 41
- Iscritto il: mercoledì 16 luglio 2008, 14:40
- Località: Vercelli
Re: Algoritmi
Altro nodo cruciale: in che linguaggio? C++?
-
- Junior
- Messaggi: 108
- Iscritto il: sabato 18 novembre 2006, 14:12
- Località: Romano di Lombardia (BG)
Re: Algoritmi
si c++..
Re: Algoritmi
Guardando la data di questo argomento è INCREDIBILE come su certi argomenti ci sia un buio improvviso dopo un evidente calore costruttivo
- Dragonfly
- Newbie
- Messaggi: 41
- Iscritto il: mercoledì 16 luglio 2008, 14:40
- Località: Vercelli
Re: Algoritmi
Beh... la mia collaborazione c'era, ma può essere che sia stato troppo complesso.
Ultima modifica di girasole il venerdì 25 maggio 2012, 15:53, modificato 1 volta in totale.
Motivazione: eliminato riporto inutile
Motivazione: eliminato riporto inutile
-
- Newbie
- Messaggi: 13
- Iscritto il: giovedì 3 giugno 2010, 12:32
- Località: udine
Re: Algoritmi
e' da un po' che non frequento il forum sebbene ogni tanto qualche sbirciatina la davo...
se ho capito stai cercando qualche algoritmo "veloce" per la ricerca di dati presenti nel tuo database, fondamentale per una ricerca veloce e' la scrittura e l'organizzazione dei dati gia' presenti nel db (i files di testo sono notevolmente piu' lenti dei files binari) specie quando si devono leggere molti dati. Un altra possibilita' sta nell' organizzare i dati per tipologie comuni, ovvero punti piuttosto che poligoni o segmenti, e successivamente
per ordinamento di coordinate (ad esempio basato sul baricentro dell'oggetto). Vedi che il tutto non puo' essere lasciato al caso, l'organizzazione del db e' un passo fondamentale che puo' fare la differenza nella succesiva fruibiilta' dei dati. In soffitta spero di avere ancora qualche libro che tratta di queste problematiche compresi esempi di algoritmi applicabili.
Fondamentalmente la via che hai descritto e' quella canonica, sicuramente ci sono algoritmi piu' "furbi" che sfruttano ad. esempio il processore grafico, (pero' qui ci addentriamo in mondi complessi di gestione di driver specifici ecc...) e non penso sia il caso di impazzire. Ricorda bene l'organizzazione dei dati e' fondamentale, poi l'algoritmo di controllo e di calcolo per la verifica puo' essere ottimizzato in funzione della organizzazione stessa del db (se hai dati gia' ordinati in x,y sei molto piu' diretto nella ricerca sapendo gia' dove ti trovi), e qui lo sai solo tu come ti sei "organizzato".
Ai tempi (direi un 25 anni fa) mi scrissi un cad in c per la gestione di rilievi planoaltimetrici a curve di livello (ordinata per oggetti quello che oggi si definisce GIS) tanta era la passione che avevo per il mio lavoro (di allora).
Spero di esserti stato di aiuto in qualche modo, ciao e fammi sapere
adriano
Ultima modifica di girasole il venerdì 25 maggio 2012, 15:53, modificato 1 volta in totale.
Motivazione: eliminato riporto inutile
Motivazione: eliminato riporto inutile