OpenGL:使用点和方向向量绘制线条

时间:2012-09-29 06:27:42

标签: c++ opengl line

我看过OpenGL语句用两点画一条线。但是,我的要求是使用以下细节绘制一条线

  • 一行
  • 方向矢量

使用openGL库在c ++中开发函数。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:2)

答案取决于你所谓的方向向量的语义。

在计算机图形上下文中,我通常会将该术语表示面向指定方向的单位矢量。而在数学上下文中,可能仅仅意味着通过减去两个点坐标得到的相对向量

[使用P1和P2表示所需的两个点,使用V表示矢量]。

在前一种情况下,您还需要为矢量指定长度,因此您需要:

P2 = P1 + n * V

而在后一种情况下,它只是简单的

P2 = P1 + V

答案 1 :(得分:0)

只需将两点线作为一个非常长的线,比你的点线上的每个方向说10000:

void drawLinePointDirection(Point P, Vector D) {
    Point A = P + 10000*D;
    Point B = P - 10000*D
    drawLineTwoPoints(A, B);
}

假设D是单位长度。