بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
مسیر یابی در Gooegle Maps
سلام
میخواستم در نسخه google maps API v2 مسیر یابی بین دو نقطه انجام بدم ولی بلد نبودم اگه کسی راه حلی داره لطفا به ما هم یاد بده.
پیشاپیش ممنون
0
0

کسی نبود ؟؟؟ (9 سال پیش)
0
0

نمایش مسیر بین دو نقطه، به چند صورت انجام میشه. یخورده توی سوالات جستجو کنید به نتیجه می رسید. اگه به نتیجه نرسیدید بگید که کد بدیم خدمتتون (9 سال پیش)
0
0

ممنون دوست عزیز این مشکل رو حل کردم. فقط اگه کدی دارید که بتونه فاصله دو نقطه رو بر حسب متر یا کیلومتر حساب کنه ممنون میشم اگه بدید. (9 سال پیش)
0
0

این که دیگه کاری نداره عزیز جان. این پایین کدش رو میذارم واست. (9 سال پیش)
برای این سوال 1 پاسخ وجود دارد.

پاسخ به سوال
احسان منصوری
9 سال پیش
+3
0
این تابع دوتا ورودی داره. اولی، مختصاتکاربر(همون Latitude و Longitude) و دومی مختصات مقصد.
public double CalculationByDistance(LatLng StartP, LatLng EndP) {
double Radius=6378.1;//radius of earth in Km
double lat1 = StartP.latitude;
double lat2 = EndP.latitude;
double lon1 = StartP.longitude;
double lon2 = EndP.longitude;
double dLat = Math.toRadians(lat2-lat1);
double dLon = Math.toRadians(lon2-lon1);
double a = Math.sin(dLat/2) * Math.sin(dLat/2) + Math.cos(Math.toRadians(lat1)) * Math.cos(Math.toRadians(lat2)) * Math.sin(dLon/2) * Math.sin(dLon/2);
double c = 2 * Math.asin(Math.sqrt(a));
DecimalFormat newFormat = new DecimalFormat("####");
double valueResult= Radius*c;
double raw=valueResult*1000;
double km=raw/1000;
double meter=raw%1000;
long kmInDec = (int) km;
int meterInDec= Integer.valueOf(newFormat.format(meter));
if(kmInDec == 0 ) {
txtDistance.setText(meterInDec + " متر ");
}else {
txtDistance.setText(kmInDec + " کیلومتر " +" و "+ meterInDec + " متر ");
}
Log.i("Radius Value", "" + valueResult + " KM " + kmInDec + " Meter " + meterInDec);
return Radius * c;
}
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .