最佳的对撞避免 我们提出了一种避免相互碰撞的正式方法,其中多个独立的移动机器人或特工在公共工作空间中移动时,必须避免彼此之间的碰撞而无需特工之间的通信。 我们的公式,即最佳的相互避免碰撞(ORCA),通过让每个代理承担避免成对碰撞的一半责任,为无碰撞运动提供了充分的条件。 为每个代理选择最优动作简化为求解低维线性程序,并且我们证明了生成的动作是平滑的。 我们在涉及数千个代理的几个密集和复杂的模拟方案工作空间上测试了最佳的相互碰撞避免方法,并在短短几毫秒内为所有代理计算了无冲突动作。 RVO2库是二维的我们算法的开源C ++ 98实现。 它具有用于第三方应用程序的简单API。 用户指定静态障
2021-11-18 19:13:02 67KB cpp robotics motion-planning collision-avoidance
1
gjk.c –平原C的Gilbert-Johnson-Keerthi 这是在普通C语言中粗略但快速地实现GJK冲突检测算法的功能。只有一个C文件,少于200行,没有依赖关系。 目前处于2D模式,即将推出完整的3D版本。此2D版本使用Minkowski求和,并在Minkowski空间中构建一个三角形单形,以判断两个任意凸多边形是否发生碰撞。 3D版本将大致相同,但将在3维Minkowski空间内构建一个四面体单形。 它当前仅指示是否存在碰撞。 距离和接触点的C代码即将推出。 免责声明 他妈的许可证和版权。 我这样做是出于学习目的,这是公共知识,任何用法都是完全免费的。 使用范例 这是的示例案例的。 将两个测试的多边形定义为纯C矢量结构类型的数组。 GJK的这种实现实际上并不关心数组中顶点的顺序,因为它将所有点集都视为凸多边形。 struct _vec2 { float x; float
2021-11-17 16:40:30 25KB physics simplex collision-detection gjk
1
碰撞检测 查看本书,包括交互式示例: 更新! 这个网站已经获得了很多访问,这真是太好了。 我进行了一些更改,以使其在移动设备上看起来更好,使导航更容易,并尝试查看所有内容以查找错误。 如果您有任何问题或建议,请。 谢谢! 对象的碰撞是大多数游戏体验和用户界面的基础。 棒球棒与球相撞,僵尸撞到墙壁上,马里奥(Mario)降落在平台和脚龟上。 甚至像用鼠标(一个点)单击一个按钮(一个矩形)这样简单的事情也是冲突。 本书使用圆形,矩形和直线等基本形状解释了这些碰撞背后的算法,因此您可以将其实现到自己的项目中。 这里覆盖了什么? 本书涵盖点,圆,矩形,直线,多边形和三角形之间的碰撞。 这些示例旨在尽可能地易于阅读和理解。 肯定有更快,更有效的方法来检测这些碰撞,但是本书旨在使用户友好并以最少的数学知识教授这些原理。 每个部分都包含对碰撞算法的描述,以及使用processing.js构建
2021-11-17 14:09:14 1.61MB processing book collision-detection interactivity
1
用c#实现的二维多边形的碰撞检测,含演示demo和源码
2021-10-22 06:05:07 21KB GDI+ 2D Polygon Collision
1
碰撞检查 Collision Check是一个计算器,用于估计两个联合卫星之间的碰撞概率,使用在标准找到的。 这是通过完成的; 采用在随机采样的联合卫星的协方差矩阵的。 该程序可以在选项卡中下载。 截图 建造 要下载所需的依赖项并使用构建碰撞检查程序,请在项目根目录中运行以下命令: lein uberjar 该程序将打包为./target目录中的独立 JAR 文件。 用法 此程序需要安装 7 或更高版本。 对于 64 位 Linux 操作系统,必须安装 FORTRAN 运行时库。 这可以在 Debian/Ubuntu 中通过运行来完成: sudo apt-get install libgfortran3 要运行该程序,请双击collision-check-XXX-standalone.jar (如果您的操作系统的文件管理器配置为启动Java程序),或在您的终端中输入以下内容(用
2021-10-08 14:59:04 208KB Clojure
1
GJK (Gilbert-Johnson-Keerthi) 碰撞检测算法在 MATLAB 中的实现。 GJK.m 函数获取形状顶点数据并返回两个形状是否穿透。 仅适用于凸形物体! MAIN_example.m 对两个多面体进行动画处理,并在两者相互碰撞时停止。
2021-09-22 22:26:16 6KB matlab
1
最佳的三维互撞避免 我们提出了一种避免相互碰撞的正式方法,其中多个独立的移动机器人或特工在公共工作空间中移动时,必须避免彼此之间的碰撞而无需特工之间的通信。 我们的公式,即最佳的相互避免碰撞(ORCA),通过让每个代理承担避免成对碰撞的一半责任,为无碰撞运动提供了充分的条件。 为每个代理选择最优动作简化为求解低维线性程序,并且我们证明了生成的动作是平滑的。 我们在涉及数千个代理的几个密集和复杂的模拟方案工作空间上测试了最佳的相互碰撞避免方法,并在短短几毫秒内为所有代理计算了无冲突动作。 RVO2-3D库是我们算法的三个方面的开源C ++ 98实现。 它具有用于第三方应用程序的简单API。
2021-09-22 15:57:19 53KB cpp robotics motion-planning collision-avoidance
1
Cooperative Collision Avoidance at Intersections.pdf
2021-09-18 19:03:23 1.29MB 交通 V2X
DWA算法提出者的论文,里面有详细地公式推导、算法原理、测试说明以及注意事项。
2021-09-12 11:54:13 581KB DWA local path plann
1
openGJK {#mainpage} openGJK库使用Gilbert-Johnson-Keerthi(GJK)算法来计算凸多边形之间的最小距离。 该实现遵循“ ”中的描述,并已在Unix和Windows系统上针对C,C#和Matlab程序进行了测试。 该库为研究人员提供了一种开箱即用的工具:您可以将其导入程序中,并用它来测量3D中两个凸多面体之间的距离。 它所需要的只是描述两个物体的顶点的坐标。 该库并未针对生产进行优化,但确实提供了全面而强大的实现。 对于大多数应用程序来说,它足够快,您也可以从此处构建以适合您自己的应用程序。 例如,openGJK不适用于增量版本,也不适用于NURBS,但它为此类特定应用程序提供了一个很好的起点。 入门 使用openGJK非常简单。 本指南将帮助您开始编译和使用openGJK。 我什么时候应该使用openGJK? OpenGJK在设计时充分考虑了准确性和鲁棒性,适用于工程仿真。 该库的好用法包括有限元方法(FEM)和离散元方法(DEM)。 基本上,openGJK可以测量任何凸多面体之间的距离。 例如: 线段 三角形 四面体 立方体。
2021-08-26 09:34:03 125KB algorithm matlab collision gjk
1