答案 0 :(得分:0)
对于每个矩形边,检查它是否与线相交。参见例如here有关如何解释此问题的解释。如果没有相交,则返回false。否则,仅当线和边的交点位于线的起点和终点之间时才返回true。
答案 1 :(得分:0)
在线上有两个点你可以得到two-point form线方程
(y - y1) * (x2 - x1) = (y2 - y1) * (x - x1)
并将其转换为general form
A * x + B * y + C = 0
然后将每个矩形角的X和Y坐标替换为此等式并找到表达式的符号
S[i] = Sign(A * x[i] + B * y[i] + C)
如果所有符号相同(非零),则此线不与矩形相交(所有顶点相对于线位于相同的半平面内),否则线相交它