在 Android 上查找圆上的点

2024-03-10

一切看起来都那么简单明了,直到我必须真正对其进行编程。

我有什么

我上传了一张图片以更好地解释它。

  • 我有一个圈子,我知道

    • 它是半径
    • 中心点坐标
    • 每个按钮的初始坐标(红色圆圈)。

我希望能够在将灰色圆形图像旋转 10 度时计算红色按钮的新坐标 (x1y1, x2y2)。

对于懂数学的人来说这应该不难实现,但我没有找到合适的解决方案。我也在这里搜索过,但找不到可行的解决方案。任何帮助是极大的赞赏。 谢谢

正如 Felice 所说,工作解决方案是:

-首先处理旋转角度,每次重绘时只需增加它

   angle = angle+mainRotationAngle;

    float x =  (float) (center.X + Math.cos(angle*Math.PI / 180F) * radius 
    float y =  (float) (center.Y + Math.sin(angle*Math.PI / 180F) * radius

    button.setX(x);
    button.setY(y);

如果您随身携带按钮首字母,会更容易angles,然后修改角度以产生旋转。所以在伪代码中:

newAngle = Angle+rot;
xbutton = center.x+cos(newAngle)*radius;
ybutton = center.y+sin(newAngle)*radius;

如果您确实只有按钮的坐标,则可以使用以下函数将它们转换为角度atan2,伪代码:

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

在 Android 上查找圆上的点 的相关文章

随机推荐

  • Tensorflow:如何将自定义输入插入现有图形?

    我已经下载了一个实现 VGG16 ConvNet 的张量流 GraphDef 我用它来执行以下操作 Pl images tf placeholder tf float32 None 448 448 3 name images batch x
  • 如何将 Func 转换为 Predicate

    是的 我见过this https stackoverflow com questions 665494 c why funct bool instead of predicatet但我找不到我的具体问题的答案 给定一个 lambda测试La
  • 会话cookie=cookie?

    我想知道 cookie 和会话 cookie 是否相同 饼干就是饼干 会话 cookie 可以指以下两种情况之一 未指定超时时间的 cookie 浏览器关闭后将被丢弃 IE 浏览器只会为当前的 浏览会话 保留它 包含会话 ID 的 cook
  • Log4Net 多个项目

    我在用log4net在我们的解决方案之一中 该解决方案包含多个项目 每个项目一个单元测试项目 我正在使用中描述的方法这个帖子 http blog falafel com Blogs josh eastburn 2012 04 10 usin
  • Mathematica 中的语法着色

    用户定义的函数符号如f in f x 2 x 或变量符号 例如lotto in lotto Table 2 10 自动着色 在 M8 上的语法着色中 没有为此提供选项 仅限未分配值的局部变量或全局符号 这并不完全是您所要求的 但可能对您有用
  • Apache POI 使用 HSSF 比使用 XSSF 快得多 - 接下来做什么?

    我在解析时遇到了一些问题 xlsx带有 Apache POI 的文件 我得到java lang OutOfMemoryError Java heap space在我部署的应用程序中 我只处理 5MB 以下的文件和大约 70 000 行 因此
  • Silverlight 中的动画边距变化

    我正在 Silverlight 中对边框大小进行动画调整 但是我还需要逐渐删除其周围的边距 当前为 50 Blend 似乎不会为边距变化生成补间 它只是一次性从 50 跳到 0 有办法实现这一点吗 问题是边距实际上是 System Wind
  • 普罗米修斯时间序列在没有更新的情况下持续多长时间

    如果我向 Prometheus 发送一个仪表 则有效负载具有时间戳和如下值 指标名称 标签 值 2 0 16239938546837 如果我在普罗米修斯上查询它 我可以看到一条连续的线 如果不发送相同指标的有效负载 线路就会停止 几分钟后发
  • 从Firebase android获取孩子ID [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我对 Android 开发非常陌生 我正在使用 Firebase 开发一个 Android 应用程序来获取一个人的姓名和地址 我的数据
  • 如何在 javascript 中将日期时间字符串的格式从使用斜杠改为使用连字符?

    我有一个以下格式的输入日期字符串 yyyy mm dd 这是我想要的输出日期字符串格式 yyyy mm dd Javascript 有内置的方法可以做到这一点吗 Use 字符串替换 https developer mozilla org e
  • 如何使用 Javascript Date 对象计算东部时间?

    我正在开发一个涉及 Javascript 的个人项目 作为该项目的一部分 我想获取当前日期 包括时间 并相应地显示它 没什么大不了的吧 嗯 deal是我想返回时间和日期东部夏令时间 无论 IP 在世界哪个地方 如果这是不可能的 您建议采用哪
  • C# 多屏幕视图单一表单

    我用 C 创建了一个 GUI 它应该如下所示 主屏幕上有两个按钮 当Button1被单击我不想使用打开新表单form2 show 但在保持相同形式的同时 我想更改显示 我通过隐藏 GUI 元素并根据需要显示其他元素来完成此操作 它按照我想要
  • 如何重命名项目中的 Rails 控制器和模型

    我启动了一个 Rails 应用程序 一切正常 但现在 我想重命名控制器和关联的模型 我想改变Corps控制器到Stores模型也相同 没有最后的 s 在谷歌上查看 人们建议销毁然后重新生成控制器和模型 问题是它会删除每个文件的实际代码 解决
  • 如何在gemspec文件中指定依赖gem的路径?

    我创建了一个 gem X 但它没有发布 现在我正在创建另一个 gem 它将添加 gem X 作为依赖项 如下所示 s add dependency X 在 gemspec 文件中 由于 gem X 不在 ruby gem 或 git 或 r
  • 如果用户正在键入,则延迟 KeyUp 操作 (C#)

    我有一个当用户在搜索框中键入内容时被调用的函数 我想在实际执行该函数之前等待用户完成输入 我知道如何在 JavaScript 中通过超时轻松完成此操作 但是我如何在 C 中做同样的事情呢 另外 在假设用户完成输入之前我应该 等待多长时间 1
  • 如何排除 Sbt 中的传递依赖(在程序集插件的上下文中)?

    我有两个 Sbt 项目 我的共享空间 and 我的服务 我的共享空间 与依赖关系 libraryDependencies Seq nz ac waikato cms weka attributeSelectionSearchMethods
  • 无法将嵌套应用程序中的自定义 Django 模型指定为 AUTH_USER_MODEL

    我无法指定自定义AUTH USER MODEL如果该模型位于nested应用 这是一些项目结构 project settings py my parent app init py apps py my child app init py a
  • JUnit:如何避免测试实用程序类中的“无可运行方法”

    我已经从JUnit3 8切换到JUnit4 4 我使用 ant 运行测试 所有测试都成功运行 但测试实用程序类失败并出现 无可运行方法 错误 我使用的模式是在测试文件夹下包含名为 Test 的所有类 我知道运行程序找不到任何用 Test 属
  • Scrapy、privoxy 和 Tor:SocketError:[Errno 61] 连接被拒绝

    我将 Scrapy 与 Privoxy 和 Tor 一起使用 这是我之前的问题Scrapy 与 Privoxy 和 Tor 如何更新 IP https stackoverflow com questions 45009940 scrapy
  • 在 Android 上查找圆上的点

    一切看起来都那么简单明了 直到我必须真正对其进行编程 我有什么 我上传了一张图片以更好地解释它 我有一个圈子 我知道 它是半径 中心点坐标 每个按钮的初始坐标 红色圆圈 我希望能够在将灰色圆形图像旋转 10 度时计算红色按钮的新坐标 x1y