algorithm - 针对凸多面体形状类型转换胶囊

标签 algorithm math vector geometry collision-detection

假设我有一个直立的胶囊形状(扫掠球体),我想沿着速度矢量转换它。我希望能够找到任何凸形的接触点表面法线沿着这条路相交。我还想知道扫过的胶囊行进到第一次接触点的距离。

这是一个胶囊被转换到一个大的凸多面体上的快速图表(只画了一个面)enter image description here

什么样的算法或过程可以做到这一点?我认为它类似于球体转换,但我也找不到太多相关信息。

最佳答案

由于您正在考虑胶囊和凸多面体,我想您可以使用基于 GJK 的东西.如果没有碰撞,您将获得碰撞期间的接触点和表面法线,以及物体与相关见证点之间的最小距离。

您还可以在 Interactive and Continuous Collision Detection for Avatars in Virtual Environments 上查看此出版物.

关于algorithm - 针对凸多面体形状类型转换胶囊,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7136449/

相关文章:

math - 为什么在 Math.h 中调用函数时会出现链接错误?

python - 为什么 Python 的 math.ceil() 和 math.floor() 操作返回 float 而不是整数?

c++ - STL vector 性能

r - 如何将由不同长度的向量组成的列表转换为R中可用的数据框?

c++ - 为什么通过引用返回 vector 比通过 move 返回快得多?

algorithm - 可变分区未在 mozart Oz 中引入错误

image - Hessian 矩阵的特征向量和特征值

regex - 什么是 "tagged DFA"?

algorithm - 内射配对函数

python - 两段算法之间的交集遗漏了交点