标签: geography

计算2个GPS坐标之间的距离

如何计算两个GPS坐标之间的距离(使用纬度和经度)?

math geometry geography geolocation latitude-longitude

344
推荐指数
16
解决办法
42万
查看次数

根据纬度/经度获取两点之间的距离

我尝试实现这个公式:http ://andrew.hedges.name/experiments/haversine/ aplet对我测试的两个点有好处:

在此输入图像描述

但我的代码不起作用.

from math import sin, cos, sqrt, atan2

R = 6373.0

lat1 = 52.2296756
lon1 = 21.0122287
lat2 = 52.406374
lon2 = 16.9251681

dlon = lon2 - lon1
dlat = lat2 - lat1
a = (sin(dlat/2))**2 + cos(lat1) * cos(lat2) * (sin(dlon/2))**2
c = 2 * atan2(sqrt(a), sqrt(1-a))
distance = R * c

print "Result", distance
print "Should be", 278.546
Run Code Online (Sandbox Code Playgroud)

它返回的距离是5447.05546147.为什么?

python geocoding geography geo

121
推荐指数
7
解决办法
17万
查看次数

我可以使用哪些服务根据用户的IP地址查找用户的位置?

如果您需要根据用户的IP地址找到用户,可以使用哪些服务(免费而非免费服务)?

PS我明白一些用户使用代理等,这意味着结果不是100%准确.没关系.

location geography ip-address

38
推荐指数
3
解决办法
3万
查看次数

SQL Server 2008 GEOGRAPHY STDistance()值

我正在使用geography.STDistance()来返回两个单点位置之间的距离.我很好奇哪个测量用于返回值?是KM,里程还是其他?

我得到的结果高达250k,但我不知道我的TSQL是否做错了,因为这些是历史位置(即它们不再存在)所以我不能只是快速查找.

declare @p1 geography

declare @p2 geography

SELECT @p1 = Location from tblLocations where Id = 1
SELECT @p2 = Location from tblLocations where Id = 2

select @p1.STDistance(@p2)
Run Code Online (Sandbox Code Playgroud)

sql geography sql-server-2008

37
推荐指数
2
解决办法
3万
查看次数

州/省的地理边界 - > Google Maps Polygon

我正在构建一个Web应用程序,它将根据按钮和单击事件在Google Map上动态突出显示某些美国州和加拿大省份.

计划A)多边形

我的主要想法是绘制多边形.为此我需要所有州和省轮廓的坐标列表(纬度+经度)(顺时针或逆时针).在政府网站上,我发现了各种不同的格式(即E00),但我无法将这些格式转换为简单的坐标列表,我可以用它来在地图上创建标记或多边形.你有什么提示可以获得这些坐标吗?

计划B)叠加

AFAIK,如果你在谷歌地图上使用叠加,当你进一步放大时它们会变得像素化(或者你可以叠加SVG吗?)在我的情况下,在最坏的情况下(所有州和所有省份)我需要50 + 11叠加.谷歌地图仍然可以实现这一点,还是会变得非常缓慢?

我有点吃惊的是,没有一种直接的方式来突出显示州或省,因为我认为这对于使用地图API的人来说是一项非常常见的任务.

提前致谢

gis google-maps geography coordinates

35
推荐指数
2
解决办法
5万
查看次数

Java,将lat/lon转换为UTM

有没有人知道在Java中将地球表面位置从lat,lon转换为UTM(比如WGS84)?我目前正在研究Geotools,但遗憾的是解决方案并不明显.

java geography geolocation latitude-longitude geotools

24
推荐指数
3
解决办法
5万
查看次数

计算地球表面上任意多边形所包围的区域

假设我有一组任意的纬度和经度对代表一些简单的闭合曲线上的点.在笛卡尔空间中,我可以使用格林定理轻松计算出这条曲线所包围的区域.计算球体表面区域的类似方法是什么?我想我所追求的是Matlab areaint函数背后的算法(甚至是一些近似).

gis math geometry geography

22
推荐指数
4
解决办法
2万
查看次数

NHibernate.Spatial和Sql 2008地理类型 - 如何配置

我试图使用Nhibernate与Sql 2008地理类型,并有困难.我正在使用Fluent Nhibernate配置我相当新的,所以这也可能是问题.

首先,我试图坚持的类看起来像:

public class LocationLog : FluentNHibernate.Data.Entity
{
   public virtual new int Id {get;set;}
   public virtual DateTime TimeStamp {get;set;}
   public virtual GisSharpBlog.NetTopologySuite.Geometries.Point Location {get;set;}
}
Run Code Online (Sandbox Code Playgroud)

映射类如下所示:

public class LocationLogMap : ClassMap<LocationLog>
{
   ImportType<GisSharpBlog.NetTopologySuite.Geometries.Point>();
   Id(x => x.Id);
   Map(x => x.TimeStamp).Generated.Insert();
   Map(x => x.Location);
}
Run Code Online (Sandbox Code Playgroud)

为了将MsSql2008GeographyDialect与Fluent Nhibernate一起使用,我创建了自己的配置类:

public class Sql2008Configuration
  : PersistenceConfiguration<Sql2008Configuration, MsSqlConnectionStringBuilder>
{
   public Sql2008Configuration()
   {
      Driver<SqlClientDriver>();
   }

   public static Sql2008Configuration MsSql2008
   {
      get { return new Sql2008Configuration().Dialect<MsSql2008GeographyDialect>(); }
   }
}
Run Code Online (Sandbox Code Playgroud)

所以我有配置代码,如:

var configuration = Fluently.Configure()
  .Database(Sql2008Configuration.MsSql2008.ConnectionString(c => c.Is(connectionString))) …
Run Code Online (Sandbox Code Playgroud)

c# nhibernate geography fluent-nhibernate sql-server-2008

22
推荐指数
1
解决办法
7495
查看次数

如何找到两个地点的纬度和经度的距离?

我有一套纬度和经度的位置.

  • 如何找到从一个位置到另一个位置的距离
  • 有配方吗?

algorithm math geography

21
推荐指数
3
解决办法
2万
查看次数

没有河流的世界地图有matplotlib/Basemap?

有没有办法用Basemap绘制大陆的边界(或者没有底图,如果有其他方式),没有那些令人讨厌的河流出现?尤其是那条甚至没有到达海洋的孔戈河,令人不安.

编辑:我打算在地图上进一步绘制数据,比如在地图库中(并且仍然将大陆的边界线绘制为数据上的黑线,以提供世界地图的结构),所以虽然下面的Hooked解决方案很好,甚至是熟练的,它不适用于此目的.

世界地图

图片制作者:

from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt

fig = plt.figure(figsize=(8, 4.5))
plt.subplots_adjust(left=0.02, right=0.98, top=0.98, bottom=0.00)
m = Basemap(projection='robin',lon_0=0,resolution='c')
m.fillcontinents(color='gray',lake_color='white')
m.drawcoastlines()
plt.savefig('world.png',dpi=75)
Run Code Online (Sandbox Code Playgroud)

python maps geography matplotlib matplotlib-basemap

20
推荐指数
3
解决办法
1万
查看次数