如何在可变距离处沿矢量找到一个点

时间:2013-09-26 17:58:53

标签: ios objective-c math trigonometry

我需要找到给定x坐标的矢量值。像这样;

enter image description here

我知道A,B和C的值。所有这些值都是可变的。我需要计算X.我知道这是可能的我只是记不起我的三角学课程。 我知道像this one这样的类似问题,但它只能找到中间点。

谢谢。

3 个答案:

答案 0 :(得分:2)

让我们说A(x1,y1)和B(x2,y2)

和X(x,y)的坐标,然后:

y = ((y2-y1)/(x2-x1))x + c .....(1)

其中c是y截距,在这种情况下为0。

答案 1 :(得分:1)

  y = ||C-A|| / ||D-A||
  Z = (B - A) * y

其中y =矢量C的长度减去矢量A,除以D的长度(沿x轴未标记的原始长度)减去矢量A

答案 2 :(得分:1)

对于穿过原点的线条,如图中所示,您可以使用类似三角形的概念:

X_y = B_y * (X_x/B_x)

或者,对于示例中显示的数字,X_y = 50,X =(50,50)。

要理解这一点,类似的三角形说:

X_y/X_x = B_y/B_x

因为具有相似形状(即,具有相同角度)的三角形具有相同的比率;第一个公式就是解决第二个公式给出X_y。

(如果该行不是通过原点,首先从所有内容中减去A,然后如上所述计算X_y,然后将A添加到所有内容。)