问题标签 [mapbox-gl-draw]

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 回答
692 浏览

mapbox - 有没有办法在 Mapbox GL js 中为绘制点绘制不同的图标?

在 Mapbox GL js 中,有没有办法在同一张地图中绘制不同的 draw_point 图标。我要添加绘图工具,并且有不同的图标。选择一个图标后,用户可以绘制地图。例如:用户可以选择树形图标并将该图标放置在地图上。然后用户可以选择房子图标并将房子放在地图上。

0 投票
1 回答
585 浏览

mapbox - Mapbox:印度 GPS 坐标在地图上显示错误位置

我正在尝试在我的 Web 应用程序中使用 JS 版本的 mapbox。但是,当将示例 lat-long 更改为 delhi 的 latlong 时,它显示的位置错误。

在此处输入图像描述

0 投票
1 回答
3093 浏览

javascript - 如何使用用户属性更改 MapboxGL 中的 line-dasharray 设置?

我尝试使用以下代码更改 line-dasharray 设置,

它给出了这个错误,

所以我根据错误建议修复了代码,

它给了我这个错误,

有谁知道如何解决这个问题?

0 投票
1 回答
167 浏览

geojson - 将特定的填充颜色添加到特定的道路或获取它的 geojson 数据

我想使用mapbox-gl js用特定颜色填充特定道路,或者至少获取该特定道路的geojson数据。有没有什么具体而有效的方法来完成这项工作?

0 投票
0 回答
234 浏览

javascript - 是否可以让 mapbox.com 绘图工具出现在自定义 DIV 中?

如题。由于我的 GIS 项目的要求,我需要将 mapbox.com 绘制工具的按钮显示在 DIV 中,以使 DIV 看起来像我创建的工具箱之一。我使用“mapbox.com draw tool in another div”或“mapbox.com draw tool show in a div”在 Google 上进行了搜索,但结果不适合我的需要。如果可能的话,有人可以指导我达到它吗?

我曾想过在生成的绘图工具中复制按钮的 outerHTML 并附加到目标 DIV ....

这些按钮显示在目标 DIV 中,但是当我按下它们时没有任何反应。

0 投票
1 回答
84 浏览

mapbox - 如何将我的地图字体更改为 Noto Kufi 阿拉伯语?

我有一个使用 Mapbox 的本机应用程序,我的应用程序主要面向库尔德客户。我有一个非常大的问题,应用程序上显示的文本和地址使用的字体显示库尔德文本效果不佳,我喜欢使用Noto Kufi 阿拉伯字体或我喜欢的任何其他字体使地图显示所有文本和地址。

但是我该怎么做呢?

0 投票
1 回答
902 浏览

reactjs - 地图启动时出现 React-mapbox-gl-draw 错误

我刚开始react-mapbox-gl-draw 在我的 react-mapbox-gl 应用程序中使用。我正在关注这个非常快速的演示和他们的文档来设置<DrawControl />. 看起来很简单,但我遇到了一个问题。

这是我的代码,错误如下:

这是错误:

或多或少,显然<DrawControl />是在组件(地图)安装后立即尝试调用方法,但我不确定为什么或如何修复它。我将不胜感激任何帮助和建议!

-编辑- 我在我的地图对象中添加了一个MapContext.Consumer,因为它抱怨想要一个map对象。所以现在它正在安装,但我看不到绘图对象。有任何想法吗?

这是我更新的代码:

0 投票
0 回答
195 浏览

javascript - 在绘图控制和绘图模式下开始在地图上绘图 onmouseenter

mapbox-gl-js 版本:@ 最新的 mapbox-gl-draw 版本:@latest

预期行为

我在地图初始化上添加了绘制控件,并且我有多种绘制类型的自定义按钮。矩形,自由多边形。所以在 DEV 环境中绘图工作完全完美。在开发人员录制的视频中 https://drive.google.com/file/d/1m1TEqQMjOgdDvFxk2HRihJMmuqLZX5WS/view

构建后的实际行为

当我在反应中创建构建时,它的行为不正确。构建项目后,DrawControl 会在鼠标悬停时自动开始绘图,但它应该在单击时开始绘图并在单击时结束绘图。在构建中,它从 mouseenter 开始并在光标在地图上时自动停止。如果你需要的话。这是构建后的当前行为。 https://drive.google.com/file/d/1aH0G7bcU9_fP3g6-o1l0n782fZzyu5w_/view

请告诉我您是否需要其他帮助我。谢谢。

0 投票
2 回答
1366 浏览

angular - 如何在 Angular 8 项目中导入 Mapbox GL Draw

我正在使用 Webpack 开发 Angular 8 项目。我能够集成Mapbox GL JS,但我不知道如何导入Mabox GL Draw。我有以下版本:

我关注了 Mapbox GL Draw docs,所以在我的 Angular 服务中,我添加了:

所以我有这个错误:

TS7016:找不到模块“@mapbox/mapbox-gl-draw”的声明文件。'/home/tommy/Work/engineering/effector/effector-gui/node_modules/@mapbox/mapbox-gl-draw/index.js' 隐含了一个 'any' 类型。尝试npm install @types/mapbox__mapbox-gl-draw它是否存在或添加一个包含 `declare module '@mapbox/mapbox-gl-draw' 的新声明 (.d.ts) 文件;

按照这个建议,我尝试使用require而不是import

我有这个:

3:20 错误 Require 语句不是导入语句的一部分 @typescript-eslint/no-var-requires ./node_modules/jsonlint-lines/lib/jsonlint.js 中的错误模块未找到:错误:无法解析“fs” '/home/user/proj/node_modules/jsonlint-lines/lib

所以我尝试遵循这个,我修改了我的tsconfig.json并通过 npm "fs" 安装。但是会出现错误:

没有找到这个依赖: * fs in ./node_modules/jsonlint-lines/lib/jsonlint.js 要安装它,你可以运行: npm install --save fs No type errors found

所以我决定回到第一个错误,我跟着这个。我修改了 tsconfig.json文件添加了这些值:

比我在这三个文件夹 types/@mapbox/mapbox-gl-draw/ 中创建index.d.ts文件的内容

但我得到这个错误

未定义(未定义,未定义)中的错误:TS2688:找不到“@mapbox”的类型定义文件。

现在我觉得离解决方案很近了,但我现在不知道如何走得更远。

0 投票
0 回答
104 浏览

mapbox-gl-js - 如何保持 mapbox-gl-draw 功能与透视对齐?

我试图在 Mapbox 中绘制保持直立的矩形,同时地图被旋转​​(并且当地图已经旋转时被直立绘制)。

我使用以下代码绘制矩形:https ://github.com/dqunbp/mapbox-gl-draw-rectangle-restrict-area

但是,当我旋转地图时,矩形也会旋转(同样,当地图已经旋转时,矩形也会倾斜)。在地图旋转时,是否有任何选项可以使矩形保持直立方向?

随地图方向旋转的矩形示例