• User Newbie

    Mappa personalizzata con Ricerca e Altitudini

    Ciao a tutti, questo è il mio primo post.
    Dovrei realizzare una cosa per un cliente, ma non ho mai fatto nulla del genere.
    Sapete indicarmi un tutorial per fare una cosa come questa:

    esnet.it/eolo-wifi/copertura/

    Praticamente identica, nel senso che devo cambiare gli oggetti e la zona di riferimento, ma mi serve la mappa in modalità terreno e il campo di ricerca.

    Grazie in anticipo a chi mi darà una mano.

    :ciauz:


  • User

    Ciao, ho realizzato in passato qualcosa del genere.
    Il tutto è fattibile "facilmente" attraverso le Api di google maps: il tutto dipende dalle tue conoscenze di javascript.

    Ti dico, in linea generale, come agire:
    a) Le "Antenne" wireless sono dei semplici punti: difficoltà 1;
    b) Al click sulla mappa si mette un'iconcina: difficoltà 1,5;
    c) In base alle coordinate del click, attraverso un algoritmo che interroga il database dei punti di cui al punto a,ti calcoli le distanze (difficoltà 3) e crei le linee (difficoltà 1).
    d) la grafica intorno esula dalle specifiche di google maps, in particolare l'altitudine: ad ogni punto nel db è associata un immagine con la quota.

    that'all, guys 😄
    spero ti siano utili le mie indicazioni 😉


  • User Newbie

    Innanzitutto grazie.
    Diciamo che ora ho una lista di cose da fare, ma non ho capito un granché di come si facciano...In particolare il discorso delle altitudini.
    Tu quando lo hai fatto hai seguito un tutorial o lo hai fatto da zero tutto con tue capacità?


  • User

    Uhm... ero convinto di averti risposto ieri 😕 devo aver fatto casini.

    Comunque... riassumendo.
    Nessun tutorial, solo le api di Google Maps (ora sono evolute alla V.3, io ho usato la V.2).

    Qui c'è il link... ti do un paio di dritte veloci.
    code.google.com/intl/it-IT/apis/maps/documentation/javascript/reference.html

    Le antennine e la casetta sono delle icone, de markers.
    Per gestire l'inserimento della casetta, devi usare un evento.
    Le linee sono oggetti PolyLine.

    Cerco di riassumerti a grandi linee quale dovrebbe essere il funzionamento (almeno dovrebbe essere così ;D)

    Dal punto della Casa che chiameremo "A", mi calcolo le distanze con i ripetitori nel raggio di x km (ad esempio 20).
    Quindi prendo in considerazione solo i ripetitori (li chiamiamo "R") che distano x chilometri da A (una circonferenza di raggio x e centro in A, insomma).

    Fatto ciò, otteniamo una lista di n ripetitori, R1, R2, R3....Rn.
    Supponiamo per semplicità n=3;

    Cosa fare ora? Calcolare l"efficienza" del segnale.

    Per fare questo prendiamo in considerazione i segmenti A-R1 ,A-R2, A-R3.

    Per ognuno di questi segmenti, agiamo come segue.
    (nb: è possibile ci sia una funzione apposita nelle api per fare qualcosa del genere, io ti descrivo la procedura "manuale")

    prendiamo il segmento X1-X2.
    Partendo da X1, attraverso la funzione elevation prendiamo le altezze del punto a distanza di 1km (ad esempio).

    Cercherò di farti un esempio "visuale".

    X1...y1....y2....y3....y4....y5...y6...y7.....y8...y9....y10...X2
    x----x----x----x----x----x----x----x----x----x----x----x

    Avremo una tabella come questa in esempio:
    Punto | Altezza
    X1 | 20
    Y1 | 19
    Y2 | 21
    Y3 | 21
    Y4 | 21
    Y5 | 19
    Y6 | 23
    Y7 | 24
    Y8 | 25
    Y9 | 25
    Y10 | 26
    X2 | 26

    Ora, da questi dati, dobbiamo fare i seguenti controlli:

    • distanza da X1 a X2: se è troppa, la qualità di connessione sarà bassa
    • presenza di ostacoli come montagne e colline, che impediranno la connessione.

    Spero di averti dato i suggerimenti necessari per avviare la tua attività 🙂

    Un saluto 😉


  • User Newbie

    Grazie mille.
    Dovrò studiare un po', ma sicuramente mi sei stato utilissimo.

    Ciao :ciauz: