gpt4 book ai didi

javascript - 沿弧线寻找点

转载 作者:行者123 更新时间:2023-11-29 19:41:03 25 4
gpt4 key购买 nike

我正在尝试编写一个 Python 或 JavaScript 例程来查找弧上的两个点。

我将使用 start_distance 和 end_distance 进入例程。我想围绕弧的圆周移动给定的量,然后返回新的 x 和 y。实际上,我正在尝试移动圆弧的起点和终点。

我对例程的输入将是

def get_points_on_an_arc(x1, y1, x2, y2, radius, large, clockwise, start_distance, end_distance)
# logic here
return s_x, s_y, e_x, e_y

这是一张可能对您有所帮助的图片。

enter image description here

知道如何写这个吗?

谢谢

最佳答案

首先你需要找到圆心。它位于垂直于 P1-P2 段的中间。中间点。

M = (P1 + P2)/2  
P12 = P2-P1 = (P12.X, P12.Y)

垂直于P12向量是

PP = (-P12.Y, P12.X)

居中
C = M + PP * t 其中 t 是参数。
你需要解方程

(C-P1)^2 = R^2

针对t参数,然后选择两个可能的解决方案之一来满足要求(大,顺时针)
(例如通过CP1和CP2标量积的符号)

找到中心后,剩下的问题就简单了:将 P1 绕中心旋转 (StartDistance/R) Angular ,然后将 P2 旋转 (-EndDistance/R) Angular 。

关于javascript - 沿弧线寻找点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23020795/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com