坐标时区

Mor*_*ten 8 .net c# timezone esri shapefile

由于标题推断我需要根据一对坐标找到时区(或者可能只是UTC偏移).我一直在寻找不同的解决方案,但有一些Web服务,但我需要能够脱机访问应用程序.由于时区并非完全基于经度,因此看起来并不容易......

我虽然要查询一个ESRI shapefile,但我已经包含了世界上所有国家和它们的时区,但它看起来有点复杂.如果这应该是解决方案,您知道任何提供此功能的.NET库吗?

小智 6

我用客户端应用程序解决了这个问题.该技术是制作一个颜色编码的圆柱形世界地图,每个时区都有独特的颜色.Lat-Lons被转换为图像坐标,并且读取坐标的颜色,然后交叉参考该颜色的时区.

这个简短的解释并不完全是我所做的,但它得到了这个想法.我实际上填充了几个字典并从中查找.第一次渲染需要2M的资源文件来填充(在我处理完地图并将其转换为二进制数据之后).理论上的最大误差(对于赤道附近的纬度)应该是+/-大约15英里.不幸的是,我的起始地图的准确度更像是+/- 100英里.

所以我正在重做这个项目.我已经进入了几天,现在创建一个更准确和更高rez的地图来紧缩.再多几天,它应该完成.资源文件将大约为20M,除非我选择仅资源"愚蠢的区域"并在数学上计算可以直接计算的世界的90%(世界上大部分可以从数学上得出经度).不确定很多人会关心资源文件是20M但有些可能.无论如何,如果似乎有一些兴趣,我会尝试发布在这里运行它所需的代码和资源文件中的一个公共代码站点.如果似乎没有兴趣,我不会打扰.

只是为了重新迭代一下,你的应用程序所需的代码只有几行,但是资源文件很大(不缩小它,我的新程序运行22M).它也很快(第一次演出跑100M /秒).它需要一个文件加载,这需要一点时间.2M版本没有明显的延迟,但22M可能(还没有).