- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想使用 minkowski 和来预测两个凸形之间的准确碰撞点。根据我的理解,速度矢量与 minkowski 和相交的点是我必须沿着矢量移动我的对象的量,以便它们刚好接触(我已经知道它们会发生碰撞)。这是我的意思的一个例子(为了简单起见,我只使用了矩形):
我的意思是我可以只计算与凸包的每条线的交点,然后只使用最接近的线,但这看起来效率极低。我的想法是计算最接近向量的单纯形,但我不知道如何最好地做到这一点。我找到了一种算法,可以计算对象之间的最小距离,或者更准确地说,是从 minkowski 和到原点 (http://www.codezealot.org/archives/153) 的最小距离。算法的一部分试图找到最接近原点的单纯形,这正是我想要做的。我试图将其更改为我的需要,但我没有成功。对我来说,这听起来应该有一个非常简单的解决方案,但我对向量数学不是很好。
我希望我能说清楚我的问题,因为我的英语不太好:D
最佳答案
您可以将问题转化为:
1) 旋转平面使速度矢量变为水平
2) 考虑相互面对的多边形轮廓部分(这是两条凸折线);现在你必须找到这两条折线之间的最短水平距离
3) 通过其中一条折线的每个顶点,绘制一条水平线;这会将平面分成一组水平切片
4) 使用剪切变换对每个切片进行变换,通过水平移动将定义它的两个顶点带到 Y 轴上;这个变换保留了水平距离
5) 在第一条折线转化为直线(Y轴)的同时,另一条折线转化为另一条折线;找到最接近 Y 轴的顶点。这为您提供了碰撞矢量的长度。
作为副产品,步骤 2) 会告诉您多边形是否发生碰撞,Y 值的范围是否重叠。
关于algorithm - 使用 minkowski 和进行碰撞预测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17624020/
有一个问题:我想计算两个几乎凸多边形的闵可夫斯基和,其中几乎凸多边形 - 多边形,通过用圆弧替换一些边获得 在凸多边形中具有 0 到 PI 弧度。 我希望有 O(n + m) 的解决方案,其中 n,
我一直在研究确定 2 个矩形相交位置的最佳方法,并且一直在研究使用 Minkowski 和。 如果有人可以解释如何使用闵可夫斯基和来确定 2 个矩形何时何地(即哪条边)发生碰撞,我将不胜感激。 我已经
不知是否有算法可以高效计算离散一维 Minkowski 和。闵可夫斯基和定义为: S + T = { x + y | x in S, y in T } 是否可以将集合表示为列表,对 S 和 T 进行排
我想使用 minkowski 和来预测两个凸形之间的准确碰撞点。根据我的理解,速度矢量与 minkowski 和相交的点是我必须沿着矢量移动我的对象的量,以便它们刚好接触(我已经知道它们会发生碰撞)。
假设我们有两个多面体,是否有任何有效的方法可以仅计算闵可夫斯基差分外壳上的顶点? 我知道要得到一个单一的船体顶点,你会找到一个多面体上 A 方向上最远的顶点,然后是另一个多面体上 -A 方向上最远的顶
基本上我在两个多面体的 minkowski 差异的外壳上有一组顶点。我想在任意预定方向上找到从原点到船体的距离。这是一个快速的二维草图: 所以问题是找到光线将与哪个三角形面/平面相交。一旦我有了那架飞
我正在研究 Minkowski 距离,其定义为: 我使用 for 循环来计算它,如下所示, import numpy as np import random A = np.random.randint
我正在为 3D 多边形、凸面和非凸面寻找精确的多边形偏移算法。这也可以通过带有球体的闵可夫斯基求和来实现。我知道 CGAL 提供了一个 minkowski 包。但是,有没有一种我可以实现的简单算法来完
当我尝试在 KNN 算法中为 minkowski 度量定义 p 值小于 1 时,我面临以下错误。谁能告诉我如何将 minkowski 指标的 p 值调整为小于 1 sc=StandardScaler(
我一直在从多个来源阅读有关 EPA 的信息,但在找到与原点的 minkowski 差异的最近点之后,它们似乎都突然停止有用。他们中的大多数人都说了类似 "With this information,
我是一名优秀的程序员,十分优秀!