我正在尝试创建一个需要两个点的箭头类。这就是我所拥有的:
struct Arrow : Lines { // an Arrow is a Line that has an arrow at the end
Arrow(Point p1, Point p2) // construct an Arrow from two points
:p1(p1), p2(p2) {}
void draw_lines() const;
Point p1;
Point p2;
};
这就是我所拥有的 draw_lines() const 函数:
void Arrow::draw_lines() const
{
Lines arrow;
arrow.add(p1, p2);
arrow.draw_lines();
}
它通过键入来工作Arrow a(Point(x,y), Point(x1,y1));
。然后应该使用 (x,y) 来计算箭头,它变成 p1,和 (x1,y1),它变成 p2,作为方向的指南,并且 (x1,y1) 作为箭头基点。我希望箭头看起来像这样,只有实心:--->。如何计算箭头指向的角度?箭头的线条需要为两个x,y坐标,如(p2.x,p2.y,(箭头后点相对于p2的x坐标),(箭头后点相对于p2的y坐标p2). .x 和 .y 表示法返回点 p 的 x 和 y 坐标。
感谢您的任何帮助。