【问题标题】:How to find the coordinates of point?如何找到点的坐标?
【发布时间】:2012-08-31 16:50:57
【问题描述】:

我在简单的二维欧几里得空间中有一组有限的点(我知道这些点的坐标)。

假设我在二维欧几里得空间中选择点 A(x1,y1) 和 B(x2,y2)。所以我有一条线AB。我需要找到这样的点 C 的坐标(实际上我需要找到点 C 是否在我的点集中),AB = AC 的长度和线 AB 和 AC 形成直角。 (实际上有两个点应该满足这些条件:在线AB的一侧和另一侧)

这应该在恒定时间内完成。

【问题讨论】:

  • 这是作业吗?请这样标记它。
  • 你试过什么?目前,这听起来像是我的老板会给我的简报,而不是请求帮助解决问题。
  • Hbcdev,我尝试使用 a*b = 0 如果向量 a 和 b 形成直角的事实,也使用斜率,但它太复杂了,我有一种强烈的感觉,有一个简单的解决这个问题。

标签: line point


【解决方案1】:

您基本上只想将 B 点围绕 A 点旋转 90 度,对吧?如果是这样,那么首先将 A 平移到原点,然后旋转,然后再平移回来。

C = [-(y2-y1)+x1,x2-x1+y1]; // rotate +90 deg
C = [y2-y1+x1,-(x2-x1)+y1]; // rotate -90 deg

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-07
    • 1970-01-01
    • 1970-01-01
    • 2014-01-16
    • 2022-01-27
    • 1970-01-01
    相关资源
    最近更新 更多