3

所以我有一个 8x8 的正方形。里面有一条线。

Line size == 8 angle == 0. 

线点之一始终位于顶角之一。

检索线穿过正方形边界的点坐标的公式是什么?(正角度表示线点之一是 0, 0。负 0, 8 )

每个坐标点的数学公式是什么?(如果可能,使用伪代码)

4

1 回答 1

6
line_end_x = line_start_x + cos(angle)*line_length

line_end_y = line_start_y + sin(angle)*line_length

如果您的线穿过垂直边缘:

intersection_x = edge_x
intersection_y = line_start_y + (intersection_x - line_start_x) * tan(angle)

如果您的线穿过水平边缘:

intersection_y = edge_y
intersection_x = line_start_x + (intersection_y - line_start_y) * tan(angle-pi/4)

编辑:更正

于 2011-02-08T01:06:16.810 回答