我想知道 Location.distanceTo 方法是否会在近似位置时使用 Location 对象的精度字段,或者我是否必须自己将错误添加到这些字段。用法是将距离与接近值进行比较。
Float dist=currentLocation.distanceTo(loc2);
会不会是
if (dist<100meters)
或
if (dist+currentLocation.getAccuracy()+loc2.getAccuracy()<100meters)
最佳答案
400 /**
401 * Returns the approximate distance in meters between this
402 * location and the given location. Distance is defined using
403 * the WGS84 ellipsoid.
404 *
405 * @param dest the destination location
406 * @return the approximate distance in meters
407 */
408 public float distanceTo(Location dest) {
409 // See if we already have the result
410 synchronized (mResults) {
411 if (mLatitude != mLat1 || mLongitude != mLon1 ||
412 dest.mLatitude != mLat2 || dest.mLongitude != mLon2) {
413 computeDistanceAndBearing(mLatitude, mLongitude,
414 dest.mLatitude, dest.mLongitude, mResults);
415 mLat1 = mLatitude;
416 mLon1 = mLongitude;
417 mLat2 = dest.mLatitude;
418 mLon2 = dest.mLongitude;
419 mDistance = mResults[0];
420 mInitialBearing = mResults[1];
421 }
422 return mDistance;
423 }
424 }
关于android - Location.distanceTo 在近似距离计算中使用误差参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3128226/