问题标签 [geodesic-sphere]
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.
javascript - 在墨卡托地图上绘制测地线圆盘
我想画昼/夜终结符,最简单的方法是计算圆形阴影(对详细数学无用)并将其投影到 wgs4 球体上。
它工作正常。只需将此功能添加到矢量图层。
但是......投影的多边形没有考虑循环坐标,并且靠近极点,最后一个顶点画一条直线到第一个顶点。我没有得到干净的正弦曲线。
我阅读了有关 ol.geom.flat.geodesic.greatCircle 的信息,但我需要的是一个 greatDisc,例如填充夜间区域。
我怎样才能做到这一点 ?
javascript - 如何使用javascript纬度/经度大地测量计算确定沿垂直方位的距离点?
我一直在使用基于矢量的大地测量学中提到的出色的编写和 JavaScript 库, 用于基于矢量的球面 LatLong 点和距离计算。它几乎具有我需要的所有功能和属性,除了(据我所知)在给定已知方位的情况下确定垂直方位的能力。当我知道通过同一给定点的初始方位时,我希望能够在与给定点垂直的方位上识别一个新点。
想要确定垂直点的背景是我正在处理地面上的区域,我知道地面上两个点的纬度/经度,并且我想在两个已知点之间的地图上绘制一个矩形多边形(它们分别位于矩形的两个相对边缘的中点 - 矩形的开始和结束边缘),使用需要计算的 4 个角点和为矩形提供的 X 宽度。我需要确定 4 个角点坐标是什么。从中找到垂线的原始方位角只是两个原点之间的方位角。
我已经确定了一些“我认为”是必要的函数签名,但我不确定这是否不仅仅是我目前拥有的简单的角度减法/加法,或者是否需要基于某种调整地球上给定点的位置以及通过该点的方位。
我上面的功能似乎在我目前的实验中处理的小区域视觉上有效,但我不确定我是否只是无法区分差异,当应用于更大的距离或全球不同方向时会不会仍然按预期工作。
更新
添加图像以显示我要完成的工作。两个已知点位于红色和绿色引脚处。我想确定紫色框角的坐标。
arcgis - GeoDesic Buffers 示例代码在我的本地 IIS 服务器中不起作用
我是使用 ArcGis Api for javascript 的新手,我使用的是 JS Api 3.20。我已经尝试了 3 天,但它不起作用。我从以下链接中获取了代码 Geometry Engine - Geodesic buffers | ArcGIS API for JavaScript 3.20 我将其粘贴到我的 Html 文件中,在 VS 网站中为 .Net 创建,并使用 IIS 服务器为我的页面设置本地服务器· GitHub 在 IIS 中的同一应用程序中设置它从https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/4.5_week.csv添加到我的应用程序中下载的 excel 文件, 但我仍然收到以下错误将代理 URL 设置为此 config.defaults.io.proxyUrl = "/192.168.8.188/Proxy/proxy.ashx" 时使用开发者模式的控制台;
当我将代理 url 设置为此 config.defaults.io.proxyUrl = "/Proxy/"; 然后在控制台中出现以下错误
你能帮帮我吗?我会提前感谢的。
esri - 想要在 ArcGIS 中使用本地 CSV 显示自定义测地线缓冲点
我从以下链接使用了 ArcGIS 的 Geodesic 缓冲区示例代码
https://developers.arcgis.com/javascript/3/jssamples/ge_geodesic_buffers.html
设置代理。它运行良好,并显示了所有具有特征的点。
从这个链接 http://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/4.5_week.csv “
但我想显示我自己的 CSV 文件中的点,但我没有在这个示例代码中找到方法,然后我使用 CSVLayer 显示点,这些点可以很好地显示我的点,但它没有功能测地线缓冲区。我无法向其中添加要素图层,因为地图不包含图形。
您能否提供一种方法来显示我自己的观点,就像测地线缓冲区样本一样?
d3.js - 使用 d3-geo 在球体的一部分上绘制具有公制尺寸的多多边形
我有以下需求:
给定一个具有公制尺寸的多多边形,我需要将它绘制在球体的特定部分上,然后以 GeoJSON 格式输出。
此外,“球体的一部分”是一个由 4 个点组成的矩形,可以相对于赤道线旋转。
例如,想象一个带有矩形的 MultiPolygon,像这样,其中的数字以米为单位:
如您所见,这样的多边形与轴成直角对齐。
然后,给定球体的任何矩形区域,例如下面的区域:
我想在这个区域平移、旋转和拟合那个多多边形。
因此,d3-geo包似乎提供了适当的工具,例如projection
将 scale/translate/rotate/fitExtent 与 invert 等结合起来。但我找不到正确的组合来处理旋转的矩形区域。
由于网络中 d3-geo 的绝大多数示例要么是从 GeoJSON 到像素,要么是使用 d3 作为 SVG 渲染引擎等。我很难将我的需求抽象为函数调用。
有没有人可以帮我解决这个问题?我想几何/三角学中必须有一个适当的术语来描述这种计算。
我自己用过“在测地线区域上投影一个平面多边形”,但我想一定有一个更好、更具体的术语。至少如果我找到这样的术语,那将是一个好的开始。
更新:
我制作了一些插图来说明我正在努力实现的目标。请记住,即使它们在这里是视觉图像,在我的情况下,我并不是在寻找视觉渲染工具,因为我只会从Array/Objects 转换为 GeoJSON。
- 我要投影的多边形。请注意,浅灰色框显示了此类多边形所在的虚拟区域,因此,由于多边形位于中间,它也应该投影到地理区域的中间。
- 大地水准面(本例中为地球)上的矩形扇区。注意指向参考角的红色标签,它应该指示旋转。
- 结果,多边形投影到给定区域(实际上是 GeoJSON 格式,具有相应的坐标)。
regex - 在perl中拆分包含经度或纬度表达式的字符串
我从包含真实测地线表达式的网络中检索数据,我的意思是带有 Unicode 符号的度、分和秒:U+00B0, U+2032 and U+2033
,命名为 Degree,Prime 和 Double Prime。例子:
我的目标是首先将这样的表达式转换为度数,然后再转换为弧度,以便在我正在编写的 Perl 模块中使用,该模块实现了 Vincenty 逆公式来计算椭圆体大圆距离。我所有的代码目标都满足了伪测地线,例如“48:25:43 N”,但当然,这是手动输入的测试数据,而不是真实世界的数据。我正在努力制作一个可以拆分这些真实数据的正则表达式,就像我现在做伪数据一样,如下所示:
我尝试了很多正则表达式,包括
都以惨淡的结果,例如$deg = "48?", $min = "?", $sec = "25′43″ N" and $dir = undef
。我已将代码封装在大括号{}
内,并包含在该范围内使用 utf8;并使用功能“unicode_strings”;所有这些都带有 nada 结果。
输入数据示例:
预期输出:
polyline - 谷歌静态地图问题:有拐角的测地线路径
我在使用 Google 静态地图时遇到测地线路径/折线问题。
带拐角的越野车地图:
删除第一个坐标时,我得到了很好的路径线:
删除最后一个坐标时,它会在不同的角落保持错误。
我找不到任何关于报告的 Google 错误的信息,但我不知道我的 URL 可能有什么问题。
有任何想法吗?谷歌?你能帮我吗?
python - 输出在 NAN 不计算错误距离
应用测地线并找出距离 b/w cell_id 但它会创建距离列但所有值都是 NAN 。
输出:
grid - 整个星球的 Openstreetmap 矩形网格
我正在尝试为整个世界生成矩形网格,单元格大小为 350 米(宽度和高度相等)。
我试图做的事情:
1) 在主循环中迭代 [-180 范围内的槽经度;180]
2) 在嵌套循环中迭代 [-85.06 范围内的低谷纬度;85.06](Web 墨卡托边界)
3) 使用 Java GeographicLib Geodesic.WGS84.Direct()在东(在主循环中)和北(在嵌套循环中)增加绑定到 350 米的单元格。
Java代码:
结果,产生了约 5.3 亿个细胞。然而,整个星球的面积约为 5.1 亿平方公里。所以,细胞总数应该是40亿左右。我对测地线数学很陌生,所以出了什么问题?我应该怎么做才能正确生成这个网格?