gpt4 book ai didi

cesiumjs - Cesium-如何计算点击位置周围指定区域的最高点、最低点、平均高度?

转载 作者:行者123 更新时间:2023-12-05 03:10:12 30 4
gpt4 key购买 nike

我已经成功地计算出用户在 cesium 中点击的位置的高度,但我的下一步有点复杂。我想要做的是,当用户在地球上的某个点点击任何缩放级别时,我想计算点击位置周围的最高点、最低点和平均高度(比如 1000 米的圆形区域)。我应该怎么做,有什么想法吗?

最佳答案

我通过使用双线性插值找到正方形区域中的所有 LatLng 解决了这个问题,然后使用 Cesium 的示例地形来查询每个点的高度信息。以下是我遵循的步骤:

  1. 在 google maps API 中使用球形实用程序查找点击位置周围方形区域的角点,如下所示:
    var northwest = google.maps.geometry.spherical.computeOffset(center, radius * Math.sqrt(2.0), 135);
    var northeast = google.maps.geometry.spherical.computeOffset(center, radius * Math.sqrt(2.0), 45);
    var southwest = google.maps.geometry.spherical.computeOffset(center, radius * Math.sqrt(2.0), 225);
    var southeast = google.maps.geometry.spherical.computeOffset(center, radius * Math.sqrt(2.0), 315);
  2. 然后使用双线性插值找到正方形区域内的点。您可以使用 spherical utils interpolate 方法来避免额外的工作。像这样:google.maps.geometry.spherical.interpolate(latlng1, latlng2, fraction);
  3. 之后使用 Cesium 的示例地形找到上一步计算的所有点的高度信息。
  4. 现在您可以轻松计算出最高、最低和平均高度。

关于cesiumjs - Cesium-如何计算点击位置周围指定区域的最高点、最低点、平均高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40794293/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com