location - android method (distance between()) -


 enter code here   package tryanabtry.opa;  import java.util.list;  import android.content.context;   import android.graphics.drawable.drawable; import android.location.location; import android.location.locationlistener; import android.location.locationmanager; import android.os.bundle; import android.util.log; import android.widget.toast;  import com.google.android.maps.geopoint; import com.google.android.maps.mapactivity; import com.google.android.maps.mapcontroller; import com.google.android.maps.mapview; import com.google.android.maps.overlay; import com.google.android.maps.overlayitem;    public class tryanabtry extends mapactivity{ private mapview mapview; private mapcontroller mc;  geopoint p, p2, p3, p4; list<overlay> mapoverlays; drawable drawable, drawable2 , drawable3, drawable4; helloitemizedoverlay itemizedoverlay, itemizedoverlay2 , itemizedoverlay3,    itemizedoverlay4;      /** called when activity first created. */       @override          public void oncreate(bundle savedinstancestate)           {           try{        super.oncreate(savedinstancestate);         setcontentview(r.layout.main);          /* use locationmanager class obtain gps locations */        locationmanager mlocmanager =    (locationmanager)getsystemservice(context.location_service);    locationlistener mloclistener = new mylocationlistener();    mlocmanager.requestlocationupdates( locationmanager.gps_provider, 0, 0, mloclistener);    mapview = (mapview) findviewbyid(r.id.mapview);     // enable street view default     mapview.setstreetview(true);        mapview.setbuiltinzoomcontrols(true);           mc = mapview.getcontroller();        mc.setzoom(12);           addoverlays();            }          catch(exception e){ log.d("eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",e.getmessage()); } } public void addoverlays(){ string [] coordinates = {"31.216487288475037","29.932637214660645" ,"30.084123015403748", "51.5002" , "-0.1262","31.337149143218994"}; double lat = 31.216487288475037;//lat2 = 51.5002,lat3=29.987091422080994; double log = 29.932637214660645;// log2 = -0.1262,log3=31.43909454345703;  p = new geopoint((int) (lat * 1e6), (int) (log * 1e6)); // p2 = new geopoint( (int) (lat2 * 1e6), (int) (log2 * 1e6)); // p3=new geopoint( (int) (lat3 * 1e6), (int) (log3 * 1e6)); mapoverlays = mapview.getoverlays(); drawable = this.getresources().getdrawable(r.drawable.ballon); //drawable2 = this.getresources().getdrawable(r.drawable.ballon); // drawable3 = this.getresources().getdrawable(r.drawable.ballon);  itemizedoverlay = new helloitemizedoverlay(drawable,this); //  itemizedoverlay2 = new helloitemizedoverlay(drawable2,this);         //  itemizedoverlay3 = new helloitemizedoverlay(drawable3,this);     overlayitem overlayitem = new overlayitem(p, "cairo", " over1"); //  overlayitem over2 = new overlayitem(p2, "ulm", "over2"); //overlayitem over3 = new overlayitem(p3, "offff", "over3");  itemizedoverlay.addoverlay(overlayitem);  mapoverlays.add(itemizedoverlay);  // itemizedoverlay2.addoverlay(over2); // mapoverlays.add(itemizedoverlay2);  // itemizedoverlay3.addoverlay(over3); //   mapoverlays.add(itemizedoverlay3); mc.setzoom(17);  // mc.animateto(p); }   /* class location listener */    public class mylocationlistener implements locationlistener  {  @override  public void onlocationchanged(location loc)  {      geopoint point = new geopoint(    (int) (loc.getlatitude() * 1e6),          (int) (loc.getlongitude() * 1e6)); //doubletostring(loc.getlatitude());  //doubletostring(loc.getlongitude()); /////////////////////////////////////////////////// loc.getaccuracy(); //////////////////////////////////////////////////////////// string text = "my current location is: " +  "latitud ="+ loc.getlatitude() +  "longitud =" + loc.getlongitude();    toast.maketext( getapplicationcontext(),  text,  toast.length_short).show(); mc.animateto(point); ///////////////////////////////////////7ewar el remove   ///////////////if (point ==p){ ///////////////mapview.getoverlays().remove(p); ////////////////// }  }        private double distance(double lat1, double lon1, double lat2, double lon2, char  unit) {    location loc = null;         geopoint point = new geopoint(    (int) (loc.getlatitude() * 1e6),          (int) (loc.getlongitude() * 1e6));        lat1=loc.getlatitude();        lon1=loc.getlongitude();        lat2= 31.216487288475037;        lon2=29.932637214660645;    double theta = lon1 - lon2;    double dist = math.sin(deg2rad(lat1)) * math.sin(deg2rad(lat2)) +       math.cos(deg2rad(lat1)) * math.cos(deg2rad(lat2)) * math.cos(deg2rad(theta));     dist = math.acos(dist);   dist = rad2deg(dist);   dist = dist * 60 * 1.1515;   if (unit == 'k') {     dist = dist * 1.609344;   } else if (unit == 'n') {     dist = dist * 0.8684;     }   return (dist); }  //::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: //::  function converts decimal degrees radians             ::: //::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: private double deg2rad(double deg) {   return (deg * math.pi / 180.0); }  //::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: //::  function converts radians decimal degrees             ::: //::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: private double rad2deg(double rad) {   return (rad / math.pi * 180.0); }  private void doubletostring(double latitude) { // todo auto-generated method stub  }   public void onproviderdisabled(string provider)  {  toast.maketext( getapplicationcontext(),  "gps disabled",  toast.length_short ).show();  }   public void onproviderenabled(string provider)  {  toast.maketext( getapplicationcontext(),  "gps enabled",  toast.length_short).show();  }   public void onstatuschanged(string provider, int status, bundle extras)  {   }  protected boolean isroutedisplayed() { return false; }  }/* end of class mylocationlistener */   @override protected boolean isroutedisplayed() { // todo auto-generated method stub return false; }   }   /* end of usegps activity*/ 

so here method distance must distance between current location , other location enter ?!! work or there must add method


Comments

Popular posts from this blog

objective c - Change font of selected text in UITextView -

php - Accessing POST data in Facebook cavas app -

c# - Getting control value when switching a view as part of a multiview -