Tag: 地理定位

使用MySQL中的GPS坐标快速检索SELECT语句

我在MySQL数据库中有一个表,其中两列是给定地理点的纬度和经度。 它被定义为Float(2,6)。 我想只从给定点中选择特定半径内的记录。 我在Java中找到了以下代码,用于检查地理点之间的距离: public class Location { private int latitudeE6; private int longitudeE6; … } public static double CalculateDistance(Location StartP, Location EndP) { double lat1 = StartP.getLatitudeE6()/1E6; double lat2 = EndP.getLatitudeE6()/1E6; double lon1 = StartP.getLongitudeE6()/1E6; double lon2 = EndP.getLongitudeE6()/1E6; double dLat = Math.toRadians(lat2-lat1); double dLon = Math.toRadians(lon2-lon1); double a = Math.sin(dLat/2) * Math.sin(dLat/2) + […]

国家/地区代码(iso-3166-1 / iso-3166-2)到经度和纬度

我需要从iso-3166-1 / iso-3166-2代码转换为经度/纬度 例子: 输入:“US”,输出:(37.09024,-95.71289100000001)。 输入“VE-O”,输出:(10.9970723,-63.91132959999999)。 我一直在寻找,但未能找到完整的列表,或者理想情况下,找不到Java库。 这个Github项目很有前途,但很多地区缺少很多地理定位信息。 请注意,与需要世界上所有国家/地区列表的问题不同,这个国家/地区具有经度和纬度坐标 ,这个区域是指区域细分(iso-3166-2)。

如何将纬度和经度转换为位置名称

如何使用Java中的API从地理坐标(纬度,经度)获取地址或位置名称? Java中是否有可用的反向地理编码器?

Geo Location API并在半径范围内查找用户

我有一个Java应用程序,我想找出访问者的位置。 API会给我一个访问者的邮政编码,然后根据该邮政编码,我会找到一个查询,并在25/50英里范围内让我的应用程序中的用户。 或者,访问者可以输入他们感兴趣的邮政编码,应用程序应该返回半径为x英里的用户。 对于在系统中注册的用户,我们只有他们的邮政编码。 我查看了一些选项,但没有找到确切的解决方案。 我不想下载邮政编码数据库并维护它们。 我不认为Google API支持这种东西。

如何在Android中获得气压高度?

计算气压高度需要哪些数据? 我如何获得它们然后计算高度? 气压测量与GPS高度相比有多准确? 我尝试过GPS,但在网上搜索了几个小时后,我找不到合适的大地水准面库。 如果我有任何概念,请纠正我。

从另一个方法访问变量

我正在尝试使用当前位置在android中提交用户注册表单。 我是android和java开发的新手。 当我尝试在我的名称值对代码中访问onLocationChanged方法的myLat和myLan时,它无法找到这两个变量。 如何访问我的名称值对代码中的变量。 package com.imran; import java.io.IOException; import java.util.ArrayList; import java.util.List; import org.apache.http.HttpResponse; import org.apache.http.NameValuePair; import org.apache.http.client.ClientProtocolException; import org.apache.http.client.HttpClient; import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.HttpPost; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.message.BasicNameValuePair; import com.google.android.gcm.GCMRegistrar; import com.google.android.maps.MyLocationOverlay; import android.location.Location; import android.location.LocationListener; import android.location.LocationManager; import android.os.Bundle; import android.os.StrictMode; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; import android.app.Activity; import […]

更快速地计算两点之间的地理距离

我从互联网上的某个地方借用了以下方法(不记得在哪里)。 但它正在做一个直接的过程,找到两个GPS点之间的距离。 它运行得很好,除了它可能有点慢,因为我在数百万点运行它。 我想知道是否有人知道一种计算上更便宜的方法。 准确度需要在“正确”的一般区域,但不需要100%准确。 private double distFrom(double lat1, double lng1, double lat2, double lng2) { double earthRadius = 3958.75; double dLat = Math.toRadians(lat2-lat1); double dLng = Math.toRadians(lng2-lng1); double a = Math.sin(dLat/2) * Math.sin(dLat/2) + Math.cos(Math.toRadians(lat1)) * Math.cos(Math.toRadians(lat2)) * Math.sin(dLng/2) * Math.sin(dLng/2); double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); return earthRadius * c; } } […]

从一个坐标到另一个坐标

我从http://www.movable-type.co.uk/scripts/latlong.html实施了“方位”公式。 但它似乎非常不准确 – 我怀疑我的实施中有些错误。 你能帮我找到它吗? 我的代码如下: protected static double bearing(double lat1, double lon1, double lat2, double lon2){ double longDiff= lon2-lon1; double y = Math.sin(longDiff)*Math.cos(lat2); double x = Math.cos(lat1)*Math.sin(lat2)-Math.sin(lat1)*Math.cos(lat2)*Math.cos(longDiff); return Math.toDegrees((Math.atan2(y, x))+360)%360; }

在Java中获取地理位置的最佳方式

在Java中获取地理位置的最佳方法是什么(尽可能自由)? 更新:不是来自GPS设备。 基本上Firefox 3.5 / HTML 5是如何做到的