问题标签 [convex-polygon]

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 投票
0 回答
101 浏览

c - 二维凸多边形的分离

我试图找出两个凸多边形是否相交。我读到最有效的方法之一是使用分离轴的方法。我在这本书http://www.geometrictools.com/Documentation/MethodOfSeparatingAxes.pdf中找到了一些代码,但我有点困惑。函数 Dot 有什么作用?

0 投票
1 回答
236 浏览

computational-geometry - 查找重叠的凸多边形

我有一组边数适中的凸多边形(比如从 4 到 30)。有十分之几的多边形,比如 100 到 1000。它们中的大多数是孤立的,但少数形成了 2 到 10 个在它们之间重叠的小组。

我需要有效地识别这些重叠多边形组。

有经典算法吗?(我正在考虑一种扫描线方法,但也许有更好的方法?)在检测之前将多边形包围在盒子中是否有益?

下面,一个有代表性的案例。

在此处输入图像描述

0 投票
0 回答
366 浏览

geometry - 将带孔的凸多边形划分为四边形

考虑到已经存在的阴影多边形(孔),如何将凸多边形划分为四边形。任何建议都会很有帮助。

在此处输入图像描述

在此处输入图像描述

我实际上想要做的是找到四边形条带,因为其中两个如下所示。我认为可能将整个多边形分成四边形将有助于实现这一目标。

在此处输入图像描述

0 投票
1 回答
175 浏览

matlab - 在矩阵中扩展多边形区域

我有以下矩阵:

我想将值 2 的区域扩大 1,这意味着扩大后,输出为:

我认为 imerode 可以扩展和缩小二进制图像,而在这种情况下不适用。matlab中有什么方法可以解决这个问题吗?

0 投票
2 回答
1335 浏览

android - Android Google Maps PolygonOptions 未从给定的坐标集绘制

我正在尝试按照给定半径的步骤在路线周围绘制一个复杂的多边形。为此,我在路线的每一步(坐标)周围绘制了 50 边的均匀多边形(实际上是圆形)。现在我获得了路线周围所有绘制圆圈的一组坐标,我可以在地图上看到它们,但它们重叠,看起来不太好看,添加如此大量的叠加层不是一个好习惯地图。

在此处输入图像描述

所以我现在需要做的就是将我现在拥有的所有多边形合并为一个多边形并将其绘制在地图中。

我尝试删除每两个多边形的交点(测试多边形 1 的点是否位于多边形 2 内,反之亦然)并将所有其余坐标合并到一个数组中,然后构造我的新多边形,但它不起作用。这是我如何执行此操作的代码片段:

0 投票
1 回答
449 浏览

java - 将凸多边形拟合到给定的矩形中

我想取一个凸多边形并通过转动和缩放将其放入给定的矩形中。

我的方法是以小步长(如 1°)转动多边形并始终测量分数(最大水平距离/最大垂直距离),取最接近分数的那个(矩形宽度/矩形高度)并将其缩放以适应进入矩形。

我想知道是否有一种“不那么原始”的方法。此外,“最佳拟合”的定义可能比仅测量最大水平和垂直距离更好。我的真正目标是让多边形“看起来不错”,当我将它存储为图像文件或将其打印在页面上时。

0 投票
0 回答
93 浏览

game-engine - 如何存储凸多边形的边?

我正在制作自己的简单 2D 游戏引擎,我想使用分离轴定理来检测碰撞,但它要求对象是凸多边形,我真的很希望能够以简单的方式创建这些多边形,因为每个物理对象在我的游戏中,需要将自己的多边形映射到它,因此为每个对象手动创建这些多边形(通过提供多边形的每个顶点的像素坐标)会非常痛苦。

有没有更好的方法来做到这一点?

0 投票
2 回答
77 浏览

3d - 在 3D 中将 3 个多边形放在一起

给定 3 个多边形,它们都被定义为平面(从侧面看,它们没有与其余部分不相符的点,所以本质上它们是 3D 空间中的 2D 形状),正好由 4 个凸点组成,并带有额外的信息每个多边形都在每个恰好两个点处连接到其他两个...

从让这些多边形“平放”开始,即:它们的值都位于 x,y 平面上,并且 Z 值都为 0...

...我怎样才能确定如何在 3D 空间中定位这些多边形,以便它们在连接点处连接?

0 投票
1 回答
477 浏览

algorithm - 如何将大面积分割成凸多边形的算法

我正在将 A* 寻路算法实现到基于网格的引擎中,但我想在多边形区域中创建节点,而不仅仅是使用网格点。

该区域将有障碍物,不应移动。

我想知道是否有一些算法可以将较大的障碍区域分割成连接凸多边形数量最少的图形?

0 投票
1 回答
563 浏览

algorithm - 礼物交换算法(贾维斯算法)计算凸包的最坏情况是什么?

我编写了一个程序来实现寻找凸包的礼品包装算法。有没有办法生成一个点集作为这个算法的最坏情况?

我将如何生成这样的案例?