使用航向和固定距离构建三角形?

时间:2011-05-26 21:37:21

标签: math vector geometry 2d

我想在现实世界中构建一个三角形来表示2D“视锥体”,使用用户的坐标,标题(当前面向真北的度数),以及表示它们可以看到的距离的固定距离。

我想象在标题方向上绘制一条距离用户点K1距离的线并标记一个临时点,然后在该点绘制一条垂直线到前一条线并在垂直线的每一边标记2个点线K2距离点。

这将给我3分,我需要。对于那些擅长数学的人来说,首先这是可能的,第二,你能给我一些关于如何处理这个问题的指示吗?感谢。

1 个答案:

答案 0 :(得分:0)

在笛卡尔坐标中:

假设:

  • +Y轴是北方。
  • K2是从“临时点”到您正在创建的两个点的距离
  • 当前位置为(Cx, Cy)
  • 标题(H)是从Y轴顺时针的角度。
  • 临时点是(Tx, Ty)
  • 剩下的两点是(Px, Py)(Qx, Qy)

然后:

Tx = Cx + K1 * sin(H)
Ty = Cy + K1 * cos(H)

Px = Tx - K2 * cos(H)
Py = Ty + K2 * sin(H)

Qx = Tx + K2 * cos(H)
Qy = Ty - K2 * sin(H)

计算(Tx, Ty)时,将sin(H)与x-coord一起使用,cos(H)与y-coord一起使用,因为角度是从Y轴测量的。在计算(Px, Py)(Qx, Qy)时,您会使用以下事实:如果(a, b)是某个向量,则(-a, b)的任意倍数都是垂直于第一个向量的向量。因此,(sin(H), cos(H))变为(-sin(H), cos(H))(cos(H), -sin(H))。这不属于二维笛卡尔空间中点积的定义和垂直向量的点积为零的无坐标事实。