[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