[Gfoss] Openlayers Tracks Editor

Francesco francesco1148 a interfree.it
Mar 22 Mar 2011 21:51:52 CET


Ciao Stefano,
magari hai già risolto, ma scrivo lo stesso un altro paio di possibilità.

Il pan con comandi da tastiera è già implementato in uno dei controlli, 
basta aggiungerlo alla mappa e l'utente potrà muoversi con le freccette 
della tastiera.
Anche la panzoombar permette di spostarsi senza "interrompere" il 
controllo drawing.
Potresti inoltre mettere fuori dalla mappa i controlli di pan, non so se 
una di quelle barre è "spostabile" in un div, ma puoi sempre fare tu un 
paio di funzioni, prendendo spunto dal codice dei controlli OL che fanno 
il pan (il codice di OL è di facile lettura).
Infine, puoi suggerire all'utente di modificare il tracciato che stava 
disegnando: disegna una parte, interrompe per zoomare (o altro) e poi 
riprende in modalità modifica (con l'apposito controllo).

Ciao


Francesco


Stefano ha scritto:
> hahahaha col cavolo che lo avevo visto!!! :)
> grazie mille!!!
> ho cercato ma evidentemente non mi è venuto in mente di cercare 
> attraverso le parole giuste..."snapping" ad esempio! :-)
>
> è veramente eccezionale l'elenco di esempio di OL!
>
> Il giorno 22 marzo 2011 11:33, G. Allegri <giohappy a gmail.com 
> <mailto:giohappy a gmail.com>> ha scritto:
>
>
>
>         Solo che il mio problema principale rimane unire insieme
>         tracce disegnate in tempi differenti! Esattamente come accade
>         su Potlatch(l'editor online di OSM)
>
>
>     Dalla tua prima emial mi sembra di capire che, anzitutto, vorresti
>     gestire uno snapping guidato, giusto? Avrai sicuramente visto
>     questo esempio: http://openlayers.org/dev/examples/snapping.html
>     Partendo da questo potresti integrarlo con delle regole per
>     guidare lo snapping in base agli attributi dei punti che
>     compongono la linea. Penso ad es. ad un progressivo per indicare
>     l'ordine di inserimento. Via via che lo snapping ti individua
>     possibili agganci, li puoi filtrare in base al fatto che siano
>     vertici col progressivo massimo rispetto alla linea di
>     appartenenza.... 
>     Sono idee buttate così, sicuramente esisteranno strade più
>     smart... Comunque mi hai dato la curiosità di esplorare meglio il
>     controllo OpenLayers.Control.Snapping ;)
>
>     giovanni
>      
>
>
>         Il giorno 22 marzo 2011 10:59, G. Allegri <giohappy a gmail.com
>         <mailto:giohappy a gmail.com>> ha scritto:
>
>             Ciao Stefano.
>             Progetto interessante.
>             Ti butto lì un'altra ipotesi, giusto per condividere idee.
>             Per quanto la soluzione al riattacco delle spezzate sia
>             comunque utile in tanti altri casi, per il problema dello
>             spostamento sulla mappa io mi preoccuperei di trovare un
>             modo user-friendly per permettere all'utente di fare un
>             pan senza dover interrompere l'editazione della linea
>             attuale. Es., valutare ogni tot la posizione del mouse
>             rispetto agli estremi della mappa e, in base ad un offset
>             stabilito, eseguire un pan da codice. Oppure switchare in
>             modalità pan con un mouse click col tasto destro. O,
>             ancora, fare il pan con le frecce della tastiera...
>
>             giovanni
>
>             Il giorno 22 marzo 2011 10:41, Stefano
>             <stefano.cudini a gmail.com
>             <mailto:stefano.cudini a gmail.com>> ha scritto:
>
>                 Buon giorno a tutti
>
>                 Sto sviluppando un sistema di tracciatura di percorsi
>                 e waypoint con interfaccia javascript utilizzando
>                 Openlayers e jQuery.
>
>                 Sono partito da uno degli esempi ufficiali disponibili
>                 nella libreria di OL:
>                 http://openlayers.org/dev/examples/editingtoolbar.html
>                 L'applicativo permette poi con dei pulsanti di salvare
>                 tutto quello che si è disegnato sopra la mappa,
>                 inviando un pacchettone(fatto di punti e linee)
>                 GeoJson al server, il quale lo converte in un semplice
>                 file gpx.
>
>                 Ma ho un problema: durante l'operazione di disegno di
>                 una traccia, se la linea che traccio è più grande
>                 della vista della mappa sono costretto a spezzarla!
>                 cioè usare il pan per spostare la mappa e poi
>                 disegnare un'altra linea, solo che in questo modo mi
>                 ritrovo due oggetti geometrici(feature in OL)
>                 differenti e separati, vorrei trovare un qualche modo
>                 per proseguire una traccia dal suo ultimo punto inserito.
>
>                 Ora la mia idea era di implementare un sistema che
>                 individua la posizione del click iniziale di una linea
>                 e permette di fonderla all'ultimo punto della linea
>                 che si trova piu vicino, secondo una certa distanza
>                 massima (in pixel).
>                 Questo sarebbe utile non solo per poter disegnare
>                 tracce molto lunghe ma anche per aggiungere segmenti
>                 ad una traccia gia esistente.
>
>                 Qualcuno di voi ha mai visto una cosa del genere
>                 implementata utilizzando OL? mi basterebbe anche solo
>                 un sito di esempio, xke io non riesco a trovare nulla
>                 del genere eppure mi sembra una funzionalità abbstanza
>                 utile! e sulla documentazione ufficiale non ho trovato
>                 nulla!
>
>
>                 grazie infinite
>                 Stefano
>
>
>                 _______________________________________________
>                 Iscriviti all'associazione GFOSS.it:
>                 http://www.gfoss.it/drupal/iscrizione
>                 Gfoss a lists.gfoss.it <mailto:Gfoss a lists.gfoss.it>
>                 http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
>                 Questa e' una lista di discussione pubblica aperta a
>                 tutti.
>                 Non inviate messaggi commerciali.
>                 I messaggi di questa lista non rispecchiano
>                 necessariamente
>                 le posizioni dell'Associazione GFOSS.it.
>                 502 iscritti all'11.2.2011
>
>
>
>
>
>         -- 
>
>
>
>                     Name indicates what we seek.
>                     An address indicates where it is.
>                     A route indicates how we get there.
>                     Jon Postel (1943-1998) RFC 791,"Internet
>                     Protocol", 1981
>
>
>
>
>         _______________________________________________
>         Iscriviti all'associazione GFOSS.it:
>         http://www.gfoss.it/drupal/iscrizione
>         Gfoss a lists.gfoss.it <mailto:Gfoss a lists.gfoss.it>
>         http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
>         Questa e' una lista di discussione pubblica aperta a tutti.
>         Non inviate messaggi commerciali.
>         I messaggi di questa lista non rispecchiano necessariamente
>         le posizioni dell'Associazione GFOSS.it.
>         502 iscritti all'11.2.2011
>
>
>
>
>
> -- 
>
>
>
>             Name indicates what we seek.
>             An address indicates where it is.
>             A route indicates how we get there.
>             Jon Postel (1943-1998) RFC 791,"Internet Protocol", 1981
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione
> Gfoss a lists.gfoss.it
> http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
> Questa e' una lista di discussione pubblica aperta a tutti.
> Non inviate messaggi commerciali.
> I messaggi di questa lista non rispecchiano necessariamente
> le posizioni dell'Associazione GFOSS.it.
> 502 iscritti all'11.2.2011

-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.gfoss.it/pipermail/gfoss/attachments/20110322/b6eee613/attachment-0001.html>


Maggiori informazioni sulla lista Gfoss