问题标签 [revolute-joints]

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 投票
2 回答
69 浏览

c++ - 旋转关节达到一定角度时的火灾事件

我需要使用box2dcocos2dx开发大炮游戏。大炮分为两部分

  • 底座固定在地面上,不会移动。

    /li>
  • 用RevoluteJoint固定在底座上的手臂

    /li>
  • 大炮应该计算出射向的角度,这是正确计算的。使用revolutJointObject->setLimits(lowerAngle, higherAngle)这里我使用lowerAnglehigherAngle都是所需的角度,因此手臂直接移动到所需的角度而无需运动。

  • 然后我需要移动手臂,而不仅仅是改变它的角度,所以我用旧的角度和所需的角度设置了 lowerAngle 和 highAngle,这取决于哪个更低,哪个更高,并改变了RevoluteJoint的电机速度

  • 问题是我需要一个回调方法,当旋转关节达到某个角度或电机速度达到零时触发,假设当手臂达到极限角度时将停止并且电机速度将为零。

我在 SO 中进行了搜索,我发现这个解决方案计算了每一步的角度,这可以使用,但它需要更多我觉得懒惰的计算。

是否存在通知电机速度或到达某个角度的回调方法?

0 投票
1 回答
267 浏览

rotation - 弹射器臂旋转 - libgdx 和 box2d

我目前正在使用 box2d 制作弹射器游戏,但我遇到了弹射器臂旋转的问题。

让我解释一下我的弹射器:

我有 2 个对象。* 弹射器臂 - 动态体 * 弹射器底座 - 静态体

我想让弹射臂在一定范围内来回旋转。这是我的弹射器的图像:http: //i.gyazo.com/7ce4dfa87b2083a0eb62df7c4acd3e47.png

现在,我尝试使用关节“链接它们”,但没有奏效。最初,我希望手臂向左弯曲一点。我有自己的游戏世界对象,其中包含 Box2d 世界对象和所有游戏对象。此外,我有一个名为 Game Renderer 的对象,它负责游戏中的渲染。到目前为止,这是我在 Game World 对象中尝试过的内容:

CatapultArm 和 CatapultBase 都是我游戏中的对象,其中包含身体的所有配置(位置、类型等)。

以下是代码:

CatapultBase.java

CatapultArm.java

ObjectInWorld.java

我怎样才能将弹射器臂“固定”到底座上,以便它可以很好地旋转?

0 投票
1 回答
250 浏览

ios - 不稳定的 b2RevoluteJoint Box2D

这是我的问题,请看视频:https ://www.youtube.com/watch?v=UFXye1mMr04

当最大的身体推动我的绳索时——它变得疯狂。我需要在我的游戏中使用鼠标关节,用户可以抓住大物体并击中那根绳子。如果我增加每个绳索元素的大小,我可以解决这个问题,但是在我的游戏中我需要更小的对象。我需要它们稳定。我知道 box2d 对小尺寸物体的效果不是很好,但我在一些游戏中看到了细绳,一切都很好。有人可以帮我解决我的问题吗?

0 投票
1 回答
565 浏览

box2d - 如何准确设置 RevoluteJoint 角度和速度?

我已经使用 JBox2D 构建了一个简单的模拟器,其中包含一个由一组身体和四个旋转关节构建的角色。我遇到了一个问题:我需要准确地恢复这个角色的“姿势”,给定一个关节角度、关节速度和躯干位置/旋转/速度/角速度的列表。

有方便的获取器和设置器用于身体的状态,但我找不到一个好的方法来强制关节角度到它们需要的位置(在这个过程中移动身体)。该站点上的一些解决方案建议设置一个基本的反馈系统,以尝试让关节电机将关节驱动到所需的角度,但这似乎不精确并且可能需要大量计算。理想情况下,我想找到一种直接设置这些值的方法。

作为最后的手段,我可​​以使用正向运动学自己计算所有的平移和旋转,但也许有更简单的方法。

任何帮助表示赞赏。谢谢。

0 投票
1 回答
364 浏览

android - 为什么 Box2d 中的车轮移动不会导致汽车移动?

我正在为我的 Android 游戏(Java + LibGDX)开发基于 Box 2d 物理的​​移动车辆。当我认为我的一切都已启动并运行时,我的带有两个轮子的汽车站在地上,但是当我转动轮子时,汽车却不动。

截屏

那是我的游戏课:

还有Hero类(其实应该叫车)

0 投票
1 回答
79 浏览

andengine - Andengine - RevoluteJointDef 扭矩

我正在按照这个惊人的教程 ( http://www.matim-dev.com/revolute-joint.html ) 创建一个 RevoluteJointDef,就像博客描述的那样。一切都按照说明进行,但是我遇到了不良行为。

问题:当我的身体(1x1 米)球跌倒(碰撞)旋转体时,即使我将其扭矩设置为非常高的值,它也会减速一段时间。

我想要什么:当我的身体与这个旋转的身体碰撞时,它应该表现得就像它在撞击地面一样。旋转体不应减速。

这是我的代码:

与这个旋转体碰撞的对象是 Sprite:

我怎样才能做到这一点?

0 投票
1 回答
372 浏览

robotics - 旋转关节跳出框架 - vrep,子弹引擎

我们有一个简单的机器人模型,在 v-rep 中有旋转连接。simSetJointTargetVelocity关节处于力/扭矩模式,它们是通过使用模拟器功能的非线程子脚本控制的。模型中启用了碰撞,并为连接杆设置了一些玩具权重。

我们遇到的错误是关节的蓝色部分(可移动部分)“摆动”并最终脱离关节的红色部分(固定外壳)。这是显示错误的屏幕截图。

在此处输入图像描述

(上关节的蓝色部分应该在红色部分里面,下关节也是如此)

如何固定关节的运动部分,使其不会四处移动,而只会根据速度设置的要求旋转?

0 投票
1 回答
324 浏览

java - 如何在旋转关节Libgdx中设置来回运动?

我试图通过旋转关节连接身体的来回运动。我试图将参考设置为零,当模拟开始时顺时针 45 度,然后逆时针回到参考,逆时针从参考开始 45 度。我想单击图像,其中 0 参考 45 度到 1,45 度,即 2,然后顺时针 45 度,然后返回参考 我试过这个

0 投票
1 回答
92 浏览

libgdx - 如何使用输入按钮控制旋转关节?

我正在尝试通过旋转关节旋转身体连接,当在我的桌面上按下空格键按钮时。当我将所有条件都放在创建中时它工作正常,但不能按下空格键按钮。这是我的创建方法

我在按下空格键按钮后启用电机

这是命中功能

我的渲染方法是这样的

请帮我提出任何建议。

0 投票
0 回答
142 浏览

unity3d - HingeJoint2D 不适用于 Unity 中的 Box Collider2D

我有这个角色,它有一个手臂作为子游戏对象,在那个手臂上有一个 HingeJoint2D 和一个 Box Collider2D。问题是,当我设置电机速度时,手臂不会立即移动,它会滞后 1 秒甚至不会移动,直到我与角色一起跳跃,但没有盒子碰撞器,手臂会立即移动。我真的不明白这里有什么问题......在此先感谢。