2016-04-16 9 views
0

Ich habe diesen Code für die GPS-Koordinaten bekommen, aber irgendwie habe ich nur eine Ausgabe der gleichen Koordinaten. IT nicht den Ausgang ändern, wo immer ich hingehe und manchmal habe ich 0 für die Breite und 0 für longtitude als Ausgang bitte mir jemand helfen oder jemand hat eine Syntax in die Koordinaten immerWie bekomme ich GPS-Koordinaten in Einheit 3d

using UnityEngine; 
using System.Collections; 
using UnityEngine.UI; 


public class testlocation : MonoBehaviour { 

    public void Start() 
    { 

     // turn on location services, if available 
     Input.location.Start(); 
    } 

    public void Update() 
    { 
     Text singleText = GameObject.Find("SinglePlayerButton").GetComponentInChildren<Text>(); 

     //Do nothing if location services are not available 
     if (Input.location.isEnabledByUser) 
     { 
      float lat = Input.location.lastData.latitude; 
      float lon = Input.location.lastData.longitude; 



      singleText.text = "Depart lat: " + lat + "lon: " + lon; 

     } 
     else 
      singleText.text = "gps off"; 
    } 



} 
+1

Versuchen Sie, den Status zu überprüfen. Zeigt das irgendwelche Probleme? Beachten Sie, dass die Standardaktualisierungsentfernung 10 Meter beträgt. Wenn Sie nicht mehr bewegen, erhalten Sie viele keine neuen Ergebnisse. – Bart

Antwort

1

Wenn Sie die GPS sicher sind, ist aktiviert und es gibt keine Laufzeitfehler in Ihrem Code, es könnte die Art sein, wie Sie testen.

Die Methode Input.location.Start() hat einen Standardabstandswert, der aktualisiert werden muss. Standardmäßig hat es 10m, also müssen Sie 10m gehen, um die Änderungen zu sehen. Ändern Sie diese Werte zum Zeitpunkt der Initialisierung.

Eingangsort.Start (10,0.1f); // Genauigkeit, alle 0,1m

Verwandte Themen