给出两点,找到第三点

Cip*_*her 1 c++ algorithm

我有两点A (x1,y1),B (x2,y2)作为程序的输入.我必须找到第三个C位于线上AB并且距离10A点一点的点.

我可以很容易地得到线的斜率,但这并没有给出线的完整方程.即使我得到完整的等式,我也不确定使用这个等式,我怎样才能找到x距离A的距离.

有关如何处理此问题的任何建议?

Joh*_*rak 6

每行总有两个点:

  • 从得到的载体AB(减去坐标)
  • 归一化向量(除以其长度;毕达哥拉斯定理)
  • 将向量乘以10 -10
  • 添加矢量A来获取C

请注意,如果A==B未定义该行,则此算法会导致除以零.您可能希望在开头添加一个相等的测试.