使用反向 Y 轴计算 2 点之间的度数

2024-03-01

我正在使用 javascript/canvas 创建一个简单的 2D 游戏。 我需要计算出某个物体相对于我的位置的角度。

所以:假设我在 (10,10) 并且物体在 (10,5) - 这将导致 90 度(因为正 Y 向下,负 Y 向上) (10,10) 与 (10,15) 的夹角为 270 度。

我该怎么办呢?


假设您位于 (a, b),而对象位于 (c, d)。那么物体与你的相对位置就是(x, y) = (c - a, d - b)。

然后你可以使用Math.atan2()功能 https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Math/atan2获取以弧度为单位的角度。

var theta = Math.atan2(-y, x);

请注意,结果在 [-π, π] 范围内。如果需要非负数,则必须添加

if (theta < 0)
   theta += 2 * Math.PI;

并将弧度转换为度数,乘以180 / Math.PI.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用反向 Y 轴计算 2 点之间的度数 的相关文章

  • 两个整数乘积的模

    我必须找到c c a b mod m a b c m 是 32 位整数 但 a b 可以超过 32 位 我正在尝试找出一种计算 c 的方法 而不使用 long 或任何 gt 32 位的数据类型 有任何想法吗 如果m是质数 事情可以简化吗 注
  • 在生产中使用 babel-node 可以吗

    我一直在使用 babel node 和 browserify 以及 babelify 转换来开发一个网站 以支持 ES6 语法 我只是想知道 我可以在生产中运行它吗 babel node server 而不是 node server 要在
  • 在 HTML5 中使用 JS 创建内联 SVG

    我正在使用本地 HTML5 文件 它有在顶部 我在里面放了这样的东西
  • jQuery - 提高处理 XML 时的选择器性能

    我正在处理一个 XML 文件 当使用 XPath 样式选择器选择节点时 该文件的性能非常慢 这是运行特别慢的部分代码 for i 0 i
  • Visual Studio IDE 中功能后的空间

    如何设置 Visual Studio 中的设计以在我的 javascript 函数后面放置一个空格 目前 当我按下返回键时 我得到了这个 var myfunc function 当我想要这个的时候 var myfunc function 知
  • Chrome 内存/垃圾收集问题

    我在使用 Chrome 时遇到内存 垃圾收集问题 我正在开发一个照片上传网站 该网站允许我的客户使用 HTML5 和文件 API 拖放照片进行上传 因此这在 IE 中不起作用 它仅适用于 Chrome 和 FF 我还没有在 Safari O
  • Amcharts 图表 - 图表列到自定义 URL 的超链接以在新选项卡/窗口中打开

    我正在尝试制作一个 amcharts 图表 其中的列链接到自定义网址 并希望网址在新选项卡 窗口中打开 我尝试将此代码添加到图形对象中 但它不起作用 它在同一选项卡 窗口中打开链接 listeners event clickItem met
  • Disqus 评论数始终为 0 条评论

    我想我已经按照通用代码的说明设置了 Disqus 问题是它总是说某个帖子有 0 条评论 拿这个帖子来说 http tx0rx0 com retropie and the raspberry pi http tx0rx0 com retrop
  • 如何在下拉列表中选择一个选项

    我正在使用 AngularJS 指令 我需要在模板中设置下拉列表的选定选项
  • RequireJS 文本插件和变量连接字符串

    我正在使用 RequireJS 文本插件来加载一些 html 模板 当我将字符串文字传递给 require 函数时 它工作正常 var templateHTML require text templates template name ht
  • 数据表“footerCallback”函数未在页脚中显示结果

    我尝试获取每列的总和并将结果显示在页脚中 我在用着 页脚回调 https datatables net reference option footerCallbackDatatables提供的功能 但是它在页脚中没有显示任何内容 数据表解释
  • 如何在启用导航栏的情况下打开新的浏览器窗口?

    我有这个JS方法 function OpenLink strDestination var features left 10 top 10 location 0 menubar 0 resizable 0 scrollbars 1 stat
  • 如何正确删除动画集中引用的 Raphael SVG 元素?

    我有一组动画 Raphael SVG 元素 我正在通过用户发起的 ajax 调用添加新元素并删除旧元素 我 set push 新元素 但因为我需要删除的元素通常不是集合中的最后一个元素 所以我使用 element remove 而不是 se
  • 当表格在 IE 中获得焦点时,表格滚动条会向上跳跃

    问题 我有一个table有包装的div with overflow y auto 一旦table获得焦点 滚动条向上跳 我怎样才能防止这种情况发生 我经历过这种行为IE9 不在 Chrome 中 请注意 我已添加tabindex到桌子上 以
  • 更改特定字符串的颜色

    有谁知道如果将特定单词输入文本区域 我如何更改它的颜色 例如 如果用户输入 你好我的朋友 它会动态地将 你好 更改为绿色 在google上花了很多时间 找不到任何相关的东西 谢谢 textareas 的设计目的不是选择性着色
  • 不可见的 reCAPTCHA - 缺少必需的参数:sitekey

    我正在为每个带有具有类的按钮的表单动态加载不可见的 reCAPTCHAg recaptcha 我遇到的问题是验证码未正确加载 我不知道为什么 我按照验证码网站上的文档进行操作 但我不确定如何以及为什么会出现此错误 Uncaught Erro
  • 在多个数组中搜索字符串,然后设置 var - jQuery

    我正在寻找基于字符串存在于哪个数组中设置一个变量 例如 var primary red blue yellow var secondary orange purple green 然后检查 purple 并返回它在 secondary 数组
  • window.open 使用 css 样式

    我想设计我的 window open 目前 我的网页上有一些项目由于解析了某个类而打开 然后在新窗口中打开指定的文本 我想更改字体大小 字体和填充等 这是我的 JavaScript 代码
  • 角度 ng-repeat 根据条件添加样式

    我在 div 列表上使用 ng repeat 并且在渲染此 div 的 json 中手动添加项目 我需要定位我在 json 中添加的最后一个 div 它会自动在屏幕上渲染 即 couse 光标所在的位置 其余部分保持在相同位置 但没有给出渲
  • 将 Angular Web 组件 EventEmitter 监听到 javascript

    我在以下工具的帮助下创建了一个小型网络组件本文 https medium com IMM9O web components with angular d0205c9db08f使用角度元素 其中包括 Input and Output 我能够将

随机推荐

  • 发送和接收 SOAP 消息

    我正在用 C 编写一个 Web 服务客户端 不想创建和序列化 反序列化对象 而是发送和接收原始 XML 这在 C 中可能吗 这是我刚刚根据 John M Gant 的示例运行的实现的一部分 设置内容类型请求标头非常重要 再加上我的请求需要凭
  • 使用 SSL 和客户端证书身份验证保护 ASP.NET MVC 应用程序

    我希望通过 SSL 和客户端证书身份验证来保护 ASP NET MVC 应用程序的安全 我使用的是 IIS 7 5 Windows Server 2008 R2 我想知道是否可以通过 Web config 执行以下操作 必须通过那里 所有请
  • 如何创建链接标签云[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我需要生成一个文本链接云 类似于所附的图像 由于有些文字是垂直的 我正在考虑通过 CSS3 来实现 但这会消耗大量时间 你知道有什么网
  • 使用 OpenCV 打开并读取 avi 文件 - Ubuntu

    我刚刚在 R Laganiere 的 OpenCV 2 计算机视觉应用编程手册 一书中读到了这一点 需要注意的是 为了打开指定的视频 文件 您的计算机必须安装相应的编解码器 否则 cv VideoCapture 将无法理解输入 文件 通常
  • 如何使用 angular_devise 保留全局当前用户直到注销?

    如何创建自己的全局可访问的服务 该服务将通过以下方式调用服务器currentUser 仅在页面加载时一次 如果用户已登录 则保留它并向控制器或状态提供数据 直到注销 现在我在许多状态或控制器中多次解析currentUser 我在文档中找到
  • 如何检测用户何时使用模拟位置 Chrome 浏览器[重复]

    这个问题在这里已经有答案了 有没有办法检测用户何时在 Chrome 浏览器 移动和桌面 中模拟他的位置 尝试过谷歌搜索 但我只看到如何实际模拟以及如何在本机移动应用程序中检测 参考这个问题 https stackoverflow com q
  • Execvp 不会对未知命令返回错误

    我有以下代码 用于分叉子级并执行命令 a 这是一个未知命令 但是 execvp 不会返回错误 而是打印 成功 当文件 a 不存在时 如果我执行 mv a b 也会发生同样的事情 我应该如何捕获并处理这些错误 int main int arg
  • java.lang.ClassCastException:android.app.ContextImpl

    我正在尝试将 ScoreNinja 融入我的小游戏中 http scoreninja appspot com http scoreninja appspot com 但是 每次都会抛出运行时异常 05 24 23 22 59 888 ERR
  • Angularjs 1.X 相当于 Angular 2 HostBinding 和 HostListener

    我目前正在将一些 ng 1 X 元素指令迁移到 1 5 组件 格式 我的指令都处于 replace true 模式 其中很多指令的根元素上都有诸如 ng class 或 ng click 之类的内容 使用新的 component 格式 re
  • 如何在不依赖 JAX-RS 实现的情况下捕获 404 (NotFoundException)?

    通常一个用途ExceptionMapper捕获异常 记录它们 返回自定义的错误消息 然而 虽然 JAX RS 提供了NotFoundException在其 api 中 实现 Jeresy CXF 提供了自己的 NotFoundExcepti
  • 为开发环境分配域名localhost

    我正在构建一个网站 并且不想将网站从指向重新配置为http 127 0 0 1 to http www example com 此外 我使用的证书当然是用正确的域名制作的www example com但我的测试环境会调用127 0 0 1这
  • Apple Web Clip(Apple Touch 图标)不适用于采用 HTTPS 的网站

    当我为网站启用 HTTPS 时 我很难在 Safari 中的 添加书签 功能中显示 Apple Touch 图标 我可以使用 添加到主页 选项来使其工作 所以我不确定是否对 添加书签 进行了不同的调用 我已经按照苹果文档 https dev
  • 无法在应用程序中使用表情符号:拒绝提交到AppStore

    有谁知道是否所有表情符号都是苹果公司的财产 我试图在我的应用程序中使用其中的很多 大约 80 个 作为文本 但应用程序被拒绝 我问是否有一个我不能使用的表情符号列表 但没有得到答案 如果你已经被 AppStore 提交过程拒绝 你就会知道它
  • 如何优化画布上的动画? HTML 5

    我面临着一个问题 随着各种图片向左 向右 向上和向下移动 画布上的动画速度会减慢 我需要有关如何优化动画的建议 重要的是动画适用于所有主要浏览器 特别是 Chrome Firefox 和 Internet Explorer 动画可以优化吗
  • 如果存在依赖,编译器能否正确处理静态变量的初始化顺序?

    如果存在依赖 编译器能否正确处理静态变量的初始化顺序 例如 我有 a h struct A static double a a cpp include a h double A a 1 b h struct B static double
  • 从 DocumentDb 中删除特定文档

    以下代码检索具有特定 jobId 的所有 CrawlResult 文档 var result from c in documentDb CreateDocumentQuery
  • 特定域的 htaccess 标头?

    我有三个环境 env com env uat com env pre com 所有三个页面都运行相同的代码 我希望 env uat com 和 env pre com 都在 htaccess 中获取此内容 Header set X Robo
  • 角度隐藏忽略

    我试图在 Angular2 中使用隐藏属性 当我包含改变 DIV 显示的样式时 隐藏属性将被忽略 当运行下面的代码时 两个 div 都会显示 当我删除 displayInline 类时 第一个 DIV 被隐藏 第二个 DIV 被显示 如预期
  • TF400324:在 Visual Studio 2012 中,Team Foundation 服务无法从服务器 获得

    当我在 Visual Studio 2012 Professional 中打开现有解决方案时 出现上述错误 这曾经有效 但在重建计算机后出现了一些问题 我已经安装了 Visual Studio 2015 Community 并且可以连接到相
  • 使用反向 Y 轴计算 2 点之间的度数

    我正在使用 javascript canvas 创建一个简单的 2D 游戏 我需要计算出某个物体相对于我的位置的角度 所以 假设我在 10 10 并且物体在 10 5 这将导致 90 度 因为正 Y 向下 负 Y 向上 10 10 与 10