CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: megthebest con ben 1 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: megthebest con ben 5 Thanks ricevuti negli ultimi sette giorni
Utente del mese: megthebest con ben 17 Thanks ricevuti nell'ultimo mese

Pagina 2 di 3 primaprima 123 ultimoultimo
Ultima pagina
Visualizzazione dei risultati da 11 a 20 su 29
Discussione:

Calcola percorso Google Maps

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #11
    Baby Droid


    Registrato dal
    Mar 2010
    Messaggi
    21

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    ora che ci sono...ma quella graziosa bandiera come overlay dove l'hai trovata??? perchè io ho cercato parecchio..ma non ho ancora trovato nulla di così carino!!!!

  2.  
  3. #12
    Baby Droid


    Registrato dal
    Apr 2010
    Messaggi
    24

    Ringraziamenti
    1
    Ringraziato 1 volta in 1 Post
    Predefinito

    Quote Originariamente inviato da biglalla83 Visualizza il messaggio
    ora che ci sono...ma quella graziosa bandiera come overlay dove l'hai trovata??? perchè io ho cercato parecchio..ma non ho ancora trovato nulla di così carino!!!!
    Dove l'ho presa non mi ricordo, forse l'ho scontornata da un'immagine più grande. Cmq se la vuoi


  4. #13
    Baby Droid


    Registrato dal
    Jul 2010
    Messaggi
    13

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Quote Originariamente inviato da DevilingMaster Visualizza il messaggio
    Dove l'ho presa non mi ricordo, forse l'ho scontornata da un'immagine più grande. Cmq se la vuoi

    ciao volevo sapere perchè mi segna errore quando faccio questi import

    codice:
    import com.google.android.maps.Overlay;
    import com.google.android.maps.Point;
    import com.google.googlenav.DrivingDirection;
    import com.google.googlenav.map.MapPoint;
    in pratica dovrebbe mancare il package ma dove lo posso scaricare
    grazie

  5. #14
    Baby Droid


    Registrato dal
    Apr 2010
    Messaggi
    24

    Ringraziamenti
    1
    Ringraziato 1 volta in 1 Post
    Predefinito

    Quote Originariamente inviato da Peppe2703 Visualizza il messaggio
    ciao volevo sapere perchè mi segna errore quando faccio questi import

    codice:
    import com.google.android.maps.Overlay;
    import com.google.android.maps.Point;
    import com.google.googlenav.DrivingDirection;
    import com.google.googlenav.map.MapPoint;
    in pratica dovrebbe mancare il package ma dove lo posso scaricare
    grazie
    Devi importare la libreria all'interno del manifest
    codice:
    <uses-library android:name="com.google.android.maps"/>
    All'interno dei tag
    codice:
    <application></application>

  6. #15
    Baby Droid


    Registrato dal
    Jul 2010
    Messaggi
    13

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Quote Originariamente inviato da DevilingMaster Visualizza il messaggio
    Devi importare la libreria all'interno del manifest
    codice:
    <uses-library android:name="com.google.android.maps"/>
    All'interno dei tag
    codice:
    <application></application>
    l'ho fatto ma continua a non rilevarla

  7. #16
    Baby Droid


    Registrato dal
    Nov 2010
    Messaggi
    1

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Qualcuno mi sa spiegare perché con l'emulatore il codice postato precedentemente funziona mentre se lo eseguo dal cellulare non funziona?

  8. #17
    Baby Droid


    Registrato dal
    Apr 2011
    Messaggi
    6

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    ciao ragazzi,
    mi sapreste spiegare da quale punto del codice viene richiamato il metodo draw di Overlay e come si fanno a passare i parametri quel metdo (canvas, mapView, shadow, when)?
    Grazie

  9. #18
    Baby Droid


    Registrato dal
    Apr 2011
    Messaggi
    19

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    ciao anke io sto lavorando ad una applicazione del genere in pratica devo visualizare su una mapview un percorso che va da A a B, ma nn so come fare .potreste darmi qualche dritta, o qualche link dove trovare qualche esempio completo.. grazie ciao


    Quote Originariamente inviato da DevilingMaster Visualizza il messaggio
    Visto che si parla della stessa cosa scrivo qua.

    Allora io ho utilizzato la seguente guida: ???: Android - Driving Direction (Route Path)

    Ecco il codice che ho generato seguendo la guida precedente


    Classe che utilizzo per scaricare il file KML in base alle coordinate dei due punti di arrivo
     
    1
    import java.net.HttpURLConnection;
    2
    import java.net.URL;
    3
    import java.util.ArrayList;
    4
    import java.util.regex.Matcher;
    5
    import java.util.regex.Pattern;
    6
    7
    import javax.xml.parsers.DocumentBuilder;
    8
    import javax.xml.parsers.DocumentBuilderFactory;
    9
    10
    import org.w3c.dom.Document;
    11
    12
    import android.content.Context;
    13
    import android.location.Location;
    14
    15
    import com.google.android.maps.GeoPoint;
    16
    17
    public class PathDownloader
    18
    {
    19
    public static ArrayList<GeoPoint> getPath(Context baseContext, Location src, Location dst)
    20
    {
    21
        ArrayList<GeoPoint> points = new ArrayList<GeoPoint>(0);
    22
        
    23
        String link = String.format
    24
        (
    25
            "http://maps.google.com/maps?f=d&hl=en&saddr=%f,%f&daddr=%f,%f&ie=UTF8&0&om=0&output=kml",
    26
            src.getLatitude(),
    27
            src.getLongitude(),
    28
            dst.getLatitude(),
    29
            dst.getLongitude()
    30
        );
    31
        
    32
        Document doc = null;
    33
        HttpURLConnection urlConnection= null;
    34
        URL url = null;
    35
        
    36
        try
    37
        {
    38
            url = new URL(link);
    39
            urlConnection = (HttpURLConnection)url.openConnection();
    40
            urlConnection.setRequestMethod("GET");
    41
            urlConnection.setDoOutput(true);
    42
            urlConnection.setDoInput(true);
    43
            urlConnection.connect();
    44
            
    45
            DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
    46
            DocumentBuilder db = dbf.newDocumentBuilder();
    47
            doc = db.parse(urlConnection.getInputStream());
    48
        }
    49
        catch (Exception e)
    50
        {
    51
            return null;
    52
        }
    53
        
    54
        if(doc.getElementsByTagName("GeometryCollection").getLength() > 0)
    55
        {
    56
            String path = doc.getElementsByTagName("GeometryCollection").item(0).getFirstChild().getFirstChild().getFirstChild().getNodeValue();
    57
                
    58
            Pattern pattern = Pattern.compile("(\\d+\\.\\d+),(\\d+\\.\\d+),\\d+\\.\\d+\\ ");            
    59
            Matcher matcher = pattern.matcher(path);
    60
                
    61
            while (matcher.find())
    62
            {
    63
                points.add
    64
                (
    65
                    new GeoPoint
    66
                    (
    67
                        (int)(Double.parseDouble(matcher.group(2))*1E6),
    68
                        (int)(Double.parseDouble(matcher.group(1))*1E6)
    69
                    )
    70
                );
    71
            }
    72
        }
    73
        else
    74
            return null;
    75
        
    76
        return points;
    77
    }
    78
    }
    79


    Classe crea il percorso sulla mappa. Cosa fa: prende due punti alla volta e traccia una linea per unirli
    60
     
    1
    import java.util.ArrayList;
    2
    3
    import android.graphics.Canvas;
    4
    import android.graphics.Color;
    5
    import android.graphics.Paint;
    6
    import android.graphics.Point;
    7
    8
    import com.google.android.maps.GeoPoint;
    9
    import com.google.android.maps.MapView;
    10
    import com.google.android.maps.Overlay;
    11
    import com.google.android.maps.Projection;
    12
    13
    14
    public class Overlay_DrawPath extends Overlay
    15
    {   
    16
    private ArrayList<GeoPoint> pathPoints;
    17
    18
    public Overlay_DrawPath(ArrayList<GeoPoint> pathPoints)
    19
    {
    20
        this.pathPoints = pathPoints;
    21
    }
    22
    23
    @Override
    24
    public boolean draw(Canvas canvas, MapView mapView, boolean shadow, long when)
    25
    {
    26
        super.draw(canvas, mapView, shadow);
    27
        Projection projection = mapView.getProjection();
    28
        
    29
        GeoPoint srcGeo;
    30
        GeoPoint dstGeo;
    31
        Paint paint = new Paint();
    32
        paint.setColor(Color.BLUE);
    33
        paint.setAntiAlias(true);
    34
        paint.setStrokeWidth(5);
    35
        paint.setAlpha(120);
    36
        
    37
        for (int i=0 ; i<pathPoints.size()-1 ; i++)
    38
        {
    39
            srcGeo = pathPoints.get(i);
    40
            dstGeo = pathPoints.get(i+1);
    41
            
    42
            Point srcPoint = new Point();
    43
            projection.toPixels(srcGeo, srcPoint);
    44
            
    45
            Point dstPoint = new Point();
    46
            projection.toPixels(dstGeo, dstPoint);      
    47
            
    48
            canvas.drawLine
    49
            (
    50
                srcPoint.x, 
    51
                srcPoint.y, 
    52
                dstPoint.x, 
    53
                dstPoint.y, 
    54
                paint
    55
            );
    56
        }
    57
        
    58
        return true;
    59
    }
    60
    }


    E nella classe che estende MapActivity ho
    10
     
    1
    List<Overlay> mapOverlays = mappa.getOverlays();
    2
    ArrayList<GeoPoint> pathPoints = PathDownloader.getPath
    3
    (
    4
        getBaseContext(), 
    5
        srcLoc, 
    6
        dstLoc
    7
    );
    8
    9
    if (pathPoints != null && pathPoints.size() > 1)
    10
        mapOverlays.add(new Overlay_DrawPath(pathPoints));


    Il codice funziona e visualizza correttamente il percorso da punto a punto ma c'è un problema grafico: tra una linea e la successiva, non essendo nello stesso verso, si vede lo spigolo (spero si capisca non ho uno screenshot sottomano).
    C'è modo di smussare agendo sull'oggetto Paint le due linee congiunte per uniformare il punto dov si uniscono?

  10. #19
    Baby Droid


    Registrato dal
    Apr 2011
    Messaggi
    6

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    ciao, anche io ho utilizzato la stessa guida e ho incontrato lo stesso problema. Prova ad usare invece del metodo drawLine(), il metodo drawPath(). Vedrai gli angoli più smussati....

  11. #20
    Baby Droid


    Registrato dal
    Apr 2011
    Messaggi
    19

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Quote Originariamente inviato da skyy Visualizza il messaggio
    ciao, anche io ho utilizzato la stessa guida e ho incontrato lo stesso problema. Prova ad usare invece del metodo drawLine(), il metodo drawPath(). Vedrai gli angoli più smussati....
    ciao anche io sto implementando un'applicazione del genere praticamente mi ricavo la mia posizione con il gps poi passandogli una destinazione deovrebbe ricavarmi il percorso ora ho due problemi però:
    1)l'applicazione funziona in parte praticamente se passo due punti mi ricava il percorso ma non per tutte le città, è mai capitata un cosa del genere a voi?
    per esempio se passo Belluno Modena mi ricava il percorso se passo Belluno Roma non succede niente non mi visualiza nessun percorso sull mappa.
    2) voglio passare un destinazione attraverso la editText, prendendo il testo dalla edittext lo passo ad un thread che per mezzo dei sistemi di georefernzazione mi ricava latitudine e longitudine di destinazione, ma appena eseguo tutto mi ad una eccezzione, non so dov'è l'errore.
    potete aiutarmi?

Pagina 2 di 3 primaprima 123 ultimoultimo
Ultima pagina

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy