移动的球从静止的球弹起的角度

2023-12-28

假设有两个球,其中一个在笛卡尔坐标平面内移动,而另一个则静止不动。在某个时刻,移动的球与惰性球发生碰撞。假设移动的球沿直线行进,根据以下信息,如何得出移动的球将被推进的新角度:

移动球的中心坐标(X0,Y0)、半径(R0)和撞击前的行进角度(A0)

静止球的中心坐标(X1,Y1)和半径(R1)


如果你的第二个球有无限质量:

其中 phi(经过长时间计算)是:

phi=  -ArcTan[
         ( 2 R^2 Sin[A0] + 2 (YD Cos[A0] - XD Sin[A0]) (2 H Cos[A0] + 
           2 XD Sin[A0]^2 - YD Sin[2 A0]))  /
         ((2 R^2 - XD^2 - 3 YD^2) Cos[A0] + (XD^2 - YD^2) Cos[3 A0] + 
           8 XD YD Cos[A0]^2 Sin[A0] + 4 H Sin[A0] (-YD Cos[A0] + XD Sin[A0]))
           ]

Where:

H   = (R0 + R1)^2 - ((Y0 - Y1) Cos[A0] + (X0 - X1) Sin[A0])^2  
R^2 = (R0 + R1)^2
XD  =  X1 - X0
YD  =  Y1 - Y0

Edit

要确定整个轨迹,您还需要撞击时移动球的中心坐标。他们是:

  {X,Y}= {X1+Sin[A0] ((Y1-Y0) Cos[A0]+ (X0-X1) Sin[A0])-Cos[A0] Sqrt[H],
          Y1+Cos[A0] ((Y0-Y1) Cos[A0]+(-X0+X1) Sin[A0])-Sin[A0] Sqrt[H]}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

移动的球从静止的球弹起的角度 的相关文章

随机推荐

  • 闭包: () => 来自函数“data”的 Map

    所以我尝试从 firestore 流式传输数据 但是在打印数据时我得到 I flutter 8356 闭包 gt Map from Function data 我正在使用此代码来获取数据 void messagesStream async
  • 如何获取 .NET (C#) 中 UserControl 的 HTML 输出?

    如果我创建一个 UserControl 并向其中添加一些对象 我如何获取它将呈现的 HTML ex UserControl myControl new UserControl myControl Controls Add new TextB
  • C++ 中的编译时类型确定

    一位同事最近向我展示了他在网上找到的一些代码 它似乎允许编译时确定一个类型是否与另一个类型具有 是 关系 我认为这太棒了 但我必须承认我对它的实际工作原理一无所知 谁能向我解释一下吗 template
  • Dart 中 out 或引用参数的代码等效项

    在 Dart 中 我如何最好地编写相当于 不可变 值 非对象 的代码输出或参考参数 例如 在 C 中 我可能会编码 function void example int result 0 if tryFindResult anObject r
  • 如何指定两个 css 类:来自属性和条件类

    我知道淘汰赛能够从可观察的属性中指定类 如下所示 div Knockout 还提供了指定条件类渲染的能力 如下所示 div 但是 如果我需要将淘汰 CSS 的这些功能绑定在一起 应该指定哪个标记 我尝试过这个 但没有运气 div 我收到错误
  • 中止 Jenkins 管道中的当前构建

    我有一个具有多个阶段的 Jenkins 管道 例如 node nodename stage Checkout git stage Check Preconditions if continueBuild What do I put here
  • 当没有编码时,如何在整个项目文件中强制使用 C# 根命名空间?

    我想在任何 cs 源文件的内容上强制使用根命名空间 这些文件的内容没有以显式方式包装namespace 换句话说 我希望将类和其他命名空间级结构保留在默认命名空间之外 使用 Visual Studio 在 Windows NET 环境中工作
  • 使用 JFace 的不可调整大小的窗口

    我如何使用 JFace API 设置不可调整大小的窗口 考虑下面创建应用程序窗口的代码 我找不到任何方法来设置窗口在 shell 对象或应用程序窗口父级上不可调整大小 我有什么遗漏的吗 public class Application ex
  • 运行服务器时 Corda ActiveMQConnectionTimedOutException

    我正在尝试在修改给定模板后运行 Corda 应用程序 运行节点后 我尝试运行模板服务器 以下是详细信息 Corda版本 4 0 ActiveMQ 在端口 8161 上运行 task runTemplateServer type JavaEx
  • 尝试循环遍历 XML 以提取 PLSQL 中的值

    我正在尝试循环遍历 XML 并提取 UUID 我有以下内容 它循环正确的次数并每次打印一个空白行 为什么它不提取 UUID 节点的文本值 DECLARE X XMLTYPE XMLTYPE
  • python:在浮点数组中查找范围内的值

    我有以下排序的 python 列表 尽管可能出现多个值 0 0943200769115388 0 17380131294164516 0 4063245853719435 0 45796523225774904 0 504022560970
  • 在 Android SQLite 中使用 COLLATE - LIKE 语句中忽略区域设置

    在 Android 中创建 SQLite 数据库时 我设置了数据库区域设置 db setLocale new Locale cz CZ 这是捷克的语言环境 SELECT 语句起作用并考虑区域设置 例如 SELECT from table W
  • 在 Go 应用程序中找不到接收器函数 [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我正在努力弄清楚为什么在 go 应用程序中找不到接收器功能 我正在将我的代码与其他教程代码进行比较 因为我一生都看不到问题 我在
  • React js 中将函数组件转换为类组件

    在我的项目中 我使用了类组件而不是功能组件 因为我在每个网站中获取所有功能组件 你能帮我将功能组件转换为类组件吗 请帮助我默认选择提供多个链接所需的第一个值 这是代码沙盒代码https codesandbox io s material d
  • Yii2:升序排序时如何将空值放在对象列表的末尾?

    这是我的数据提供者 dataProvider new ActiveDataProvider query gt query pagination gt pageSize gt 50 sort gt defaultOrder gt priori
  • 文本框上带有最大长度和占位符的 IE10 验证错误

    我有一个年龄文本框
  • AsyncTask 运行时黑屏

    我是新手 所以在这里提出问题 因此任何有关此问题的建议将不胜感激 但对于我的问题 我正在尝试从一项活动切换到另一项活动 在其中我将显示来自服务器的一些数据 我通过 AsyncTask 从服务器提取数据 但当下载时间较长时 活动之间会显示黑屏
  • Visual Studio代码:删除编辑器上的自动换行

    请帮助我在 Visual Studio 代码上编辑 dart 文件时需要删除以下行 Visual Studio 代码编辑器视图 https i stack imgur com HYPfh png Shift CMD P 输入 设置 点击 首
  • 将徽标/图像添加到数据表的一侧

    我已经寻找一种方法来创建一个带有徽标 图像的表作为数据表的列 我附上了我想要的那种桌子的图片 数据表取自使用示例library formattable 然后我将徽标粘贴到 id 列的顶部 以显示我正在寻找的设计类型 理想情况下 这会更整洁且
  • 移动的球从静止的球弹起的角度

    假设有两个球 其中一个在笛卡尔坐标平面内移动 而另一个则静止不动 在某个时刻 移动的球与惰性球发生碰撞 假设移动的球沿直线行进 根据以下信息 如何得出移动的球将被推进的新角度 移动球的中心坐标 X0 Y0 半径 R0 和撞击前的行进角度 A