gpt4 book ai didi

javascript - 如何使用 mapbox-gl-Draw 创建 8 个点的矩形?

转载 作者:行者123 更新时间:2023-12-03 00:23:53 25 4
gpt4 key购买 nike

我在使用 Mapbox-gl-Draw 时遇到一个独特的问题。 Mapbox Draw 允许您轻松创建多点多边形,但是我需要它仅使用 8 个点,因为我在其他地方使用的算法接受 8 个 lnglat 元素。我想知道当单击绘图按钮时是否有可能在屏幕上显示一个 8 点的矩形,并且能够拖动每个点?

以下是一键抽奖的预期结果。 Expected outcome目前我可以画一个矩形,但只有 4 个点,矩形的每个 Angular 。

最佳答案

您应该只获取输出,然后以编程方式添加中点,而不是尝试搞乱mapbox-gl-draw。您可以使用turf's midpoint为此目的而发挥作用。像这样的东西:

const coords = rectangle.geometry.coordinates[0];
const newcoords = [];
coords.forEach((point, i) => {
newcoords.push(point);
if (i < coords.length - 1) {
newcoords.push(midpoint(point, coords[i+1]).geometry.coords);
}
});
rectangle.geometry.coordinates = newcoords;

关于javascript - 如何使用 mapbox-gl-Draw 创建 8 个点的矩形?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54183631/

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