问题标签 [deck.gl]

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.

0 投票
1 回答
5911 浏览

reactjs - 由于 webpack gl 错误,下一次构建失败

我正在尝试使用mapbox.gland构建 NextJS 应用程序deck.gl,它在我的本地服务器上运行良好,但是当我尝试发布应用程序 webpack时发生错误:

编译失败。./node_modules/@luma.gl/webgl/dist/es5/webgl-utils/webgl-types.js 未找到模块:无法解析“/Users/kingusha/Desktop/HTMLCSSJS/ReactApps/something/”中的“gl” node_modules/@luma.gl/webgl/dist/es5/webgl-utils'

我已经尝试gl使用和研究此事来安装模块npm,但没有找到任何解决方案。有谁知道如何解决这个问题?

0 投票
1 回答
685 浏览

mapbox-gl - 如何更新deckgl-mapbox MapboxLayer的可见道具

我有 10-15 个不同的 layerId 图层,并从 deck.gl/mapbox 子模块 api 引用创建MapboxLayer并添加到 mapbox 地图实例中。

尝试通过调用layerVisibility方法从 UI 传递 layerId 和 propertyValue 作为 true/false 复选框来设置图层的可见性,但它不起作用。

DeckglLayer 类:

Mapbox 实例:

注意:- 我尝试将图层布局属性可见性设置为“可见”或“无”,但在这种情况下,即使图层隐藏,工具提示也会出现。

您能否建议我最好的方法,如何为 MapboxLayer 的 hexagonLayer 类型设置图层可见属性 true/false。

0 投票
1 回答
545 浏览

three.js - DeckGL 在海量点云数据可视化方面的表现如何?

您在使用 DeckGL 可视化大型点云方面有何经验?

我通常是 WebGL 的新手,并且正在评估用于可视化大量点云数据的框架/方法。

0 投票
1 回答
3142 浏览

javascript - 在 deck.gl 地图中动态更新 Geojson 图层

我无法动态更新我在卡组中创建的图层。

我在创建初始图层(具有城市边界的要素集合 geojson)后初始化了地图。之后,我选择了一个城市,并尝试使用 jquery-change 收听的下拉菜单将地区图层加载到地图中。我使用 gejosin.io 验证了城市和地区的 geojson,并且 voth 渲染得很好。在我的应用程序中,显示初始城市图层,但是当我更改图层实例(共享相同的 id,在文档中被告知如此)时,它不会在视图上更新。我使用了 setProps 并且在控制台中我可以看到图层的数据确实在变化。唯一的问题似乎是地图中没有采取行动。我也尝试使用deck(map) 的redraw() 方法,但没有成功。

需要注意的一点是,deck.gl 不会使用相关方法手动更新地图元素。它说它使用“反应式编程范式”。据我了解,当我们更改数据时,它会自行更新。我们使用外部函数也有例外,这会导致更改不起作用,但我们这里不使用这样的东西。

我希望能够将可见层从城市更改为地区。此外,我还将更改视口,但首先我需要有动态图层。

0 投票
1 回答
369 浏览

deck.gl - 如何在 react-map-gl/deck.gl 视口上获得 H3 六边形?

我想根据视口上可见的 H3 六边形查询数据(以及每个视口更改的新数据)。无论如何用react-map-gl和deck.gl来实现这一点?

0 投票
0 回答
243 浏览

javascript - 使用路由时在 Deck.gl 中弹出

我在我的 JS 应用程序中使用deck.gland 并且routes在弹出窗口时遇到了一些问题。如果我deck.gl作为一个独立的(没有routes)使用,那么我可以显示弹出窗口,但是在框架中使用完全相同的代码routes会失败。控制台显示_renderTooltip正在调用该函数,但没有显示任何内容。谁能告诉我为什么?

这是我的工具提示渲染器:

通过以下方式调用:

使用:

0 投票
1 回答
460 浏览

javascript - 如何使用 Mapbox 将可以随时更改的图像显示为地图?

在我的应用程序中,用户必须能够将平面图添加到地图中。用户使用简单的表单上传PNG图像,然后该图像必须显示为地图背景。所以我们在这里拥有的是:

  • 用户可以随时更改的 PNG 图像。我从服务器收到此图像的 URL。
  • 图像的尺寸(宽度和高度)。

Mapbox 有sources并且layers我需要使用它来将此图像添加为地图的背景,并且根本不能显示实际的世界地图。

我见过很多这样的例子(这个正在使用mapbox-gl-js):

而这个(这个正在使用deck.gl层):

但它们总是有图像的预定义坐标。因为用户可以随时更新我的​​图像,所以我需要以某种方式计算这些坐标,同时考虑图像的纵横比。我数学不太好,请你帮帮我好吗?deck.gl能够指定图层的坐标系,甚至是 4x4 投影矩阵,但我不太明白如何在我的情况下使用它。

0 投票
0 回答
139 浏览

reactjs - Deck.gl 中的地理配准点云

我想在deck.gl 中的静态地图上呈现激光雷达数据的点云。

在deck.gl 文档中有一个位于地图上的点云示例但是从代码中我不清楚示例点云是如何进行地理参考的。我在 deck.gl 文档中找到的其他点云示例不包括地图。

由于我的数据来自“真实世界”的测量,我需要确保它与地图正确对齐。我该怎么办?

0 投票
1 回答
901 浏览

mapbox-gl-js - 如何在 Deck.gl/react-map-gl 中显示建筑楼层

所以我目前正在处理 Deck.gl 和 React,我需要加载一个 geojson 文件,该文件有一个名为“floors”的附加属性或类似的东西,它告诉建筑物有多少层。

有什么方法可以将交替的地板水平挤出一点点,使它看起来像这个图像中的一些建筑物的地板边缘(尽管它们中的大多数只是在顶部变薄)。我尝试搜索deck.gl,但没有这样的东西。我抬头发现 MapBox-gl-js 有一个叫做extrusion-base-height的东西,它可以让你在另一个之上添加多边形,但是没有水平挤压以使1层变薄然后恢复到原始大小这样的东西。每当新楼层开始时,这都会让步。

我已经搜索了 deck.gl 的文档,但在水平拉伸或在另一种意义上改变多边形区域/大小以便我可以在同一个位置绘制多个大小的多边形时找不到任何东西。

在此处输入图像描述

我正在尝试的另一张清晰图片

在此处输入图像描述

我想做的事情。

  1. 红色多边形是倾斜的。需要使它的方向与绿色的方向相同,同时减少它的面积。

  2. 移动绿色多边形顶部的红色多边形底座。

我正在使用的测试数据如下所示,

编辑:-我认为正确的方法是将经度/纬度转换为笛卡尔坐标,将向量获取到多边形的 4 个角,将向量平移到中心移动偏移量,然后再转换回来。但这仅适用于四边形/矩形多边形,对于由多个四边形组成的建筑物,我需要另一种方式。

0 投票
1 回答
497 浏览

reactjs - 无法捕获包含在 deck.gl@^7.1.10 中的 Marker 子级的 onClick 事件

我使用了 deck.gl@^6.4.7 和 react-map-gl@^5.0.7,并放置了一个带有图标子项的标记,该子项正在侦听点击事件。当我将deck.gl 更新到7.1.10 版时,图标的点击事件停止工作。

你知道如何解决这个问题吗?