问题标签 [cartography]
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.
python - 关于操作 SVG 地图的建议
我正在为维基百科绘制加利福尼亚母语地图。该地图包含每个区域对应一种语言。原来的样子是这样的(点击它查看SVG):
我想手动(在Inkscape中)为每种单独的语言制作“定位器地图”,就像这个,为一种叫做Cahuilla的语言(它有语言代码cah
):
不用说,如果我在 Inkscape 中手动生成所有 60 多个,这样做会很痛苦。
更糟糕的是,每当我在原件中发现错误时,我都必须重做整套定位器地图。(事实上,我最近意识到我的原作完全缺少一种语言。对不起 Cupeño。)
所以我的目标是自动化这个过程。我没有太多处理 SVG 甚至 XML 的经验,所以我正在寻找关于哪些库最有帮助的建议。我更喜欢 Python 中的解决方案,因为我对那种语言并不绝望。
总而言之,我需要:
获取原始 SVG 文件中所有语言形状的引用列表。
对于此列表中的每种语言:
更改当前语言形状的背景颜色
在语言周围放一个框
复制盒子并将其缩放到给定的大小(我认识到,在这一步中,可能很难像我在示例中所做的那样实际“裁剪”周围的形状——只需在白色背景上创建一个带有语言形状的盒子就可以了足够了。)
将副本放在右上角
将所有这些内容保存在 code.svg 中
最终产品将是 60 个名为cah.svg
等的 SVG 文件。更好的是,如果需要编辑原始地图(这很可能),则可以重新生成整个 shebang。
java - java将投影EPSG:900913转换为EPSG:4326
在 openlayers 中,我们可以简单地将 EPSG:900913 转换为 EPSG:4326
我正在寻找可以做到这一点的 java lib。
在这里我找到了这个,
http://www.jhlabs.com/java/maps/proj/index.html
但是文档是c++的
,我不知道怎么用。
如果有人知道,
请发布一个简单的代码
delphi - How do I plot latitude/longitude coordinates on the screen?
I am trying to figure out how to plot WGS84 latitude/longitude points on a bitmap but cannot figure out the math required to turn lat/lon points into coordinates that would be plottable. Could anyone give me some pointers or examples on how to do this?
thanks
Colin
java - java中的制图和路线图
大家好,我正在开发的应用程序必须显示客户、经销商和其他类型数据的列表,以及地理地图(来自卫星)或大学考试的路线图。
使用此应用程序,我必须尽可能从源和目的地计算isodromi 距离和街道路线。
我查看了 Google Maps API,但使用 Google Maps Data API for Java 我只能处理标记等数据,并且我需要企业许可证才能集成到非 Web 应用程序中。对于 Bing 地图,它是一样的......
你能推荐我一个免费的图书馆吗?我不介意如果是封闭源代码,即使开源会更好......
提前感谢每一个人
马可
matplotlib - 用 Matplotlib 绘制地图?
万一有人不知道:制图是一种地图,其中一些与国家/地区相关的数字属性对各个区域进行缩放,以使该属性的密度(接近)恒定。一个例子是
来自worldmapper.org。在此示例中,国家根据其人口进行缩放,从而导致人口密度接近恒定。
不用说,这真的很酷。有谁知道用于绘制此类地图的基于 Matplotlib 的库?worldmapper.org 使用的方法在 (1) 中进行了描述,所以如果还没有人实现它,我会感到惊讶......
我也有兴趣了解其他制图库,即使它们不是为 Matplotlib 制作的。
(1) Michael T. Gastner 和 MEJ Newman,基于扩散的密度均衡地图制作方法,Proc。纳特。学院派。科学。美国, 101, 7499-7504 (2004)。可在arXiv获得。
c# - 快速查找和渲染高于给定海拔的地形
给定一个由 lat/lon/elevation 对组成的高程图,找到高于给定高程水平的所有点的最快方法是什么(或者更好的是,只是 2D 凹壳)?
我正在开发一个 GIS 应用程序,我需要在地图顶部呈现叠加层,以直观地指示海拔较高的区域;它正在确定这个让我难过的多边形/区域(现在)。我有一个简单的 lat/lon/elevation 对数组(更具体地说,是GTOPO30 DEM 文件),但我可以自由地将其转换为您建议的任何数据结构。
我们一直指向不规则三角网络 (TIN),但我不确定在生成 TIN 后如何有效地查询该数据。如果我们的问题可以像生成等高线图一样得到解决,我不会感到惊讶,但我对此没有任何经验。任何建议都会很棒。
architecture - 复杂信息系统制图工具
我正在寻找一种类似 Visio 的工具,它可以帮助我在组件级别绘制我的信息系统。
该设计不适合单张纸,我想要一个带有“无限”纸的网络工具和适当的导航系统。
例如,我想到的一个想法是使用 Google 地球上的 KML 图层来绘制信息系统并对其进行导航。我不知道在 Google 地球中做一个类似 Visio 的拖放编辑器是多么容易。
你有没有发现过这样的工具?您如何处理您的信息系统的鸟瞰图?
谢谢你的帮助,
杰罗姆·瓦格纳
c++ - 经络和经络的数据模型
我正在考虑一些合适的模型来存储经络和平行线。经线和纬线应保持为线。
可能的型号:
A)“拓扑”模型 每个点存储指向北、南、东和西点的指针。
优点:
- 我们可以沿南北方向遍历每条子午线,反之亦然。我们可以沿东西方向遍历每个平行线,反之亦然。
- 我们确定每个点是在子午线内还是平行(使用指针)。
- 小存储需求...
缺点:
- 仅顺序访问每个子午线/平行点
- 复制构造函数和运算符 = 的问题。一组点的副本应该分几个阶段完成:创建一个新的点实例,使用 std::map 添加点之间的拓扑关系,更改子午线/平行线的端点......这相当慢......
第二个缺点导致我放弃了这个模型。
B) 点列表。经络/并行存储点列表,没有拓扑关系。
优点:
- 我们可以沿南北方向遍历每条子午线,反之亦然。我们可以沿东西方向遍历每个平行线,反之亦然。
- 复制构造函数和运算符 = 没有问题
- 顺序和直接访问每个点。
缺点:
- 我们无法确定每个点是否属于任何经线/平行线(使用指针)。
- 更大的存储需求。
- 在任何时候我们都无法找到子午线/平行线的上一个/下一个点,我们没有指针......
最后一个缺点可能导致模型的放弃,并导致我考虑拓扑模型的修改变体......
我正在执行一些空间模拟并在几个地图投影中表示结果,因此高效的数据存储对我来说非常重要。
也许有人可以提出一个更好的模型:-)。谢谢你的回答...
geolocation - 我应该使用什么地球半径来计算两极附近的距离?
我正在监视一个 GPS 装置,它正在从加拿大的 Cape Discovery 到北极的途中。我需要跟踪每天行驶的距离和剩余距离,所以我使用Haversine Formula,我被告知对于较小的距离非常准确。
我的数学真的很差,但我偷偷怀疑精度在很大程度上取决于地球的半径,并且由于宇宙决定将地球制成扁球体,因此我可以选择地球半径的近似值从中选择。
由于我正在监测非常靠近北极的坐标,我想知道是否有人知道哪个半径将提供最准确的信息。
- 平均赤道:6,378.1370km
- 平均极地:6,356.7523
- 真实/体积:6,371km
- 经向:6367km
或者任何其他人都知道的半径?
我希望一些数学或制图高手可能知道这个问题的答案。
mapping - 我在哪里可以找到可以叠加点的地球图片?
有没有可以用于地理可视化的免费地图图片?我正在寻找质量合理的东西,我可以将纬度/经度点映射到像素上并使用可视化技术。去哪里寻找这样的东西?