国家/州/海洋的地理区域数据

发布于 2024-09-17 14:13:57 字数 502 浏览 10 评论 0原文

我正在开发一个应用程序,其中实体位于地球上的位置。我想要一组数据,从中可以确定某个点包含在哪些区域中。

区域可能有以下类型:

  • 大陆
  • 、乡村、
  • 海、
  • DMZ、
  • 沙漠、
  • 冰架

……等等。

我设想将每个区域表示为多边形。对于任何给定的点,我会测试它是否包含在每个多边形中。非常欢迎其他想法。

我还希望找到包含部分或全部这些边界的公共领域数据集。

其中一些多边形将非常详细(可能比我需要的更详细),因此我需要有效执行这些计算的技巧。我希望简化二维多边形的方法也很有用。此类事情的最佳实践是什么?

任何人都可以推荐这些数据的任何好的资源、任何特定的编程方法或执行此类操作的现有软件库吗?

编辑

我应该指出,区域的数据集将是相当静态的,因此如果可以提高性能,预计算是一个不错的选择。

I'm developing an application where entities are located at positions on Earth. I want to have a set of data from which I can determine what region(s) a point is contained within.

Regions may be of types:

  • Continent
  • Country
  • Lake
  • Sea
  • DMZ
  • Desert
  • Ice Shelf

...and so forth.

I'm envisioning representing each region as a polygon. For any given point, I would test to see if it is contained in each polygon. Alternative ideas are very welcome.

I am also hoping to find public domain data sets that contain some or all of these boundaries.

Some of these polygons are going to be enormously detailed (possibly more detailed than I need) and so I need tips on performing these calculations efficiently. Methods for simplifying 2D polygons would also be useful I expect. What are the best practices for these kinds of things?

Can anyone recommend any good resources of this data, any particular programming approaches or existing software libraries that do this kind of thing?

EDIT

I should point out that the data set of regions will be fairly static, so precomputation is a good option if it improves performance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

只为一人 2024-09-24 14:15:56

Natural Earth 是一个很好的资源。

Natural Earth 是一个公共领域地图数据集,提供 1:10m、1:50m 和 1:110 百万比例尺。 Natural Earth 具有紧密集成的矢量和栅格数据,您可以使用制图或 GIS 软件制作各种视觉上令人愉悦、精心制作的地图。

数据以 ESRI Shapefile 形式提供。存在许多 Shapefile 库。

如果您在自己的编程语言中找不到对 Shapefile 的支持,请参阅此 PDF 详细说明文件格式。

A great resource is Natural Earth.

Natural Earth is a public domain map dataset available at 1:10m, 1:50m, and 1:110 million scales. Featuring tightly integrated vector and raster data, with Natural Earth you can make a variety of visually pleasing, well-crafted maps with cartography or GIS software.

The data is provided as ESRI Shapefiles. There are many Shapefile libraries in existence.

If you can't find support for Shapefiles in your programming languages, this PDF details the file format.

沙与沫 2024-09-24 14:15:35

如果您在平面上,常见的算法是从您的点绘制一条随机的半直线,并检查与给定多边形的交点数量。如果是奇数,你就在里面,如果是偶数,你就在外面。您必须注意顶点和数值不准确。

现在,你在一个球体上。您可以将其投影到平面上(您使用的实际投影可能取决于多边形)并执行上述操作。

If you're on a plane, the common algorithm is to draw a random straight half line from your point and checking for the number of intersections points with the given polygon. If it is odd, you're inside, if it is even, you're outside. You have to beware of vertices and of numerical inaccuracies.

Now, you're on a sphere. You can project it on a plane (the actual projection you use can depend on the polygon) and do the above.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文