问题标签 [gis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
11791 浏览

ruby - 如何通过 lat/lng 查找高程数据

我正在计划一个应用程序,该应用程序需要能够通过 lat/lng 查找地理点的高程。理想情况下,我想要一些可以在全球范围内使用的东西,但仅限美国也足够了。我看过使用USGS Elevation Query Web Service,但是它只允许您一次查询一个点,我需要查找几百个,甚至可能多达几千个。我也考虑过自己下载和托管国家高程数据集,但它几乎有 100 个演出,显然 USGS 一次只允许您下载 1.5 个演出。

任何熟悉 GIS 的人都可以为我推荐一个好的解决方案吗?我正在寻找尽可能轻巧和简单的东西。我对 GIS 完全陌生,因此我非常感谢有关从何处获取数据、如何存储数据以及使用数据时如何/使用什么的建议。

提前致谢。

编辑:澄清一下,我需要的数据点不是预先确定的。它们是用户选择的任意点(通过与谷歌地图混搭交互),所以我确实需要能够查询任何点,而不仅仅是一个小子集。

编辑2:如果没有轻量级或简单的解决方案,我会尽我所能=)

0 投票
1 回答
46 浏览

gis - 访问本地网络上的地理数据有哪些方法?

我目前正在编写一个地理 Web 应用程序。显然它需要访问一些地理数据,例如地形高程和道路位置。不同之处在于应用程序必须能够在与 Internet 断开连接的情况下工作 - 即从本地网络上的服务器获取其 GIS 数据。

我假设我不能使用 Google Maps API。

是否有捷径可寻?

0 投票
5 回答
9149 浏览

mapping - 使用 Java 和任何外部库,我如何将纬度/经度点绘制到地球的图形表示上?

我目前正在使用Java 地图投影库(我能够从作者那里获得用于 Applet 的代码并对其进行修改以用于桌面应用程序 - 不确定他是否在他的网站上链接到该代码)来绘制一个应用程序中的地球地图。但是,我想更进一步。我有一组要在这张地图上绘制的纬度/经度点 - 我只需要在每个点上画一个圆圈,也许还有一些线连接地图上的圆圈(点)。但是,由于用户使用内置的平移和缩放功能,需要在适当的位置重新绘制点。我能做到的最好的就是在放大时保持点,即使这样,当你放大时,点也会变大。

我完全愿意切换库,但是我真的还没有找到一个可以处理绘制世界地图的库,特别是在 Swing 组件上(它不需要那么准确,只是稍微展示一下各种陆地正确)并且还在该地图顶部绘制附加点并使它们“粘”到各种纬度/经度坐标。

我看过 Google Earth 和 NASA WorldWind,但是它们对于我的目的来说非常沉重(我不需要任何详细或准确的东西),并且允许离线使用并将世界图像视图集成到其中似乎并不容易现有的应用程序。

建议或想法?

0 投票
7 回答
41748 浏览

c# - 如何找到给定纬度/经度以北 x 公里的纬度/经度?

我有一些生成谷歌地图的 C# 代码。此代码查看我需要在地图上绘制的所有点,然后计算出矩形的边界以包含这些点。然后它将这个边界传递给 Google Maps API 以适当地设置缩放级别以显示地图上的所有点。

这段代码运行良好,但是我有一个新要求。

其中一个点可能具有与之相关的精度。如果是这种情况,那么我在该点周围画一个圆,半径设置为精度值。这再次工作正常,但是我的边界检查现在没有做我想要做的事情。我想让边界框包括完整的圆圈。

这需要一种算法来获取一个点 x 并计算点 y,该点位于 x 以北 z 米处和 x 以南 z 米处。

有没有人有这个算法,最好是在 C# 中。我确实在这里找到了一个通用算法,但我似乎没有正确实现这一点,因为我得到的答案是 1000 公里的漂移。

这是通用示例

这是我的 C# 翻译。

我用 0 的方位角调用这个函数来计算新的北向位置,用 180 的值来计算新的南向位置。

谁能看到我做错了什么或者提供一个已知的工作算法?

0 投票
2 回答
5337 浏览

javascript - 如何检查是否加载了 Dojo 对话框?

我正在运行一个需要关闭 Dojo 对话框(如果已加载)的函数。如何检查 dojo 对话框是否正在运行?我是否使用纯 JavaScript 并通过 id 检查它是否未定义?

或者我是否使用对话框对象的属性,例如:

0 投票
5 回答
2613 浏览

algorithm - 如何确定经纬度坐标在坐标系中是否有效?

如果我有一个纬度/经度点,我想知道它是否在特定坐标系中有效,我该怎么做?

举个例子。假设我在 Swiss Grid (CH 1903, EPSG 21781) 工作并且有一个点代表英国伦敦的某物,我想知道该点在 Swiss Grid 坐标系中是否有效。

通常转换会起作用,但它可能在瑞士电网适用的区域之外太远,以至于它不是真正有效的。

这样做的背景是,用户会将经纬度的点导入在投影坐标系中工作的应用程序中,并且当他们导入的点超出投影坐标系边界时,他们希望收到警告。

但据我所知,投影坐标系没有任何界限。

0 投票
6 回答
5450 浏览

c# - .NET 中适用于 Windows PC 的良好 GIS 软件或组件?

上周我为 GIS(地理信息系统)寻找好的免费或开源解决方案和组件我创建了一些系统但没有人满足我的要求

  • SharpMap 是一个漏洞百出的软件
  • Gmap.net 很慢
  • MapWindow 的结构非常复杂,而且非常有缺陷。

我创建了 uDIG,但使用的是 java,我需要 vb.net 或 c# 中的解决方案。

任何人都知道满足我的要求或有替代方案的好解决方案,我接受解决方案吗?

0 投票
1 回答
343 浏览

silverlight - GIS Map 插件的本地数据源?

我正在开发一个需要交互式地图界面的 ASP.NET 内部网应用程序。

我认为有一些非常简洁的 Silverlight 映射插件可以很好地工作,特别是:

ArcGIS Silverlight API: http: //resources.esri.com/arcgisserver/apis/silverlight/ DeepEarth 映射框架: http: //www.codeplex.com/deepearth

毫无疑问,还有更多的插件可以让 ASP.NET 和映射接口之间轻松交互(如果我错过了主要参与者,请提出一些建议)。

然而,我主要关心的是在本地数据源中使用这些工具。这里最好的选择是什么?我所需要的只是一些中等分辨率的基本卫星图像以及一些城市和国家边界的覆盖图。我可以下载这些图像的数据集吗?我真的不在乎它们是否是最新的,只要照片是在过去 20 年拍摄的。

我希望能够使用本地数据源,因为由于组织工作的性质,外部 Internet 连接可能非常慢,而 Intranet 通信总是会快得多。

总结一下:

1.) 我在哪里可以找到中等质量的全球卫星图像数据集?2.) 哪个基于 Web 的地图插件可以让我插入这样的数据源?

如果我能得到类似 DeepEarth 演示 ( http://www.codeplex.com/deepearth ) 但从公司内部服务器获取数据的东西,我会非常高兴。

0 投票
3 回答
958 浏览

gis - 如何过滤空间数据

我有一个地图点数据库,我想将显示限制为一次最多显示约 50 个点。当用户放大时,可能会显示更多的点。

目前,我只是对结果集进行随机抽样。这不是很好,因为可能有空白区域,当放大时突然显示一个点。

我的下一个想法是我可以创建一个 10x5 的网格,然后迭代结果。如果网格中的某个位置是空的,我会显示一个点。这解决了之前的问题,但也不会让用户感觉到集中区域在哪里。此外,如果用户决定缩小到整个世界,这会很慢。

现在,我没有使用任何空间算法对数据进行排序。我的计划是先让它正常工作,然后快速完成。稍微阅读一下 RTress、kd-trees 和四叉树,我找不到任何可以帮助我选择样本的“智能”子集的东西。似乎应该有某种广度优先搜索可以很容易地解决这个问题。

0 投票
2 回答
1281 浏览

iphone - 在 iPhone 上构建“查找最近”位置感知应用程序的最佳方法是什么?

我想构建一个位置感知应用程序,它可以自动检测用户的位置并向他们展示一个地标数据库中最近地标的排序列表。该应用程序将构建在 iPhone 上。

基本问题是:

  1. 如何计算到附近地标的距离并按“最近”排序
  2. 在哪里执行计算 - 通过 Web 服务在外部服务器上 - 或通过 SQLite 数据库和/或核心位置在 iPhone 本身上执行计算

理想情况下,应用程序将使用“路由距离”而不是乌鸦距离(即更大的圆距离公式)来计算距离,这是更准确的方法。当然,随之而来的是成本——计算起来会慢得多。我想知道哪种方法最合适。

此外,在手机本身上执行计算(使用核心位置?)的优点是不需要与服务器交谈(更快),并且可以在没有互联网连接的情况下使用该应用程序。缺点在于难以使地标数据库与最新数据保持同步。

我想知道是否有实现诸如此类的位置感知应用程序的行业标准方法。如果没有,请提出问题的最佳解决方案。