📅  最后修改于: 2023-12-03 15:40:35.561000             🧑  作者: Mango
在计算机图形学中,经常需要判断一个点是否位于矩形内,本文将介绍如何判断一个点是否位于一个矩形内,并给出一些实用的代码片段。
判断一个点是否位于一个矩形内,最直接的方法是使用矩形的四个顶点来构成四条边,然后通过计算这四条边与点的相对位置来判断点是否位于矩形内部。
具体判断方法如下:
if x < x1 or x > x2:
return False
if y < y1 or y > y2:
return False
return True
下面是完整的代码片段:
def is_point_in_rectangle(point, rectangle):
"""
检查点是否位于矩形内。
Args:
point: 要检查的点,格式 (x, y)。
rectangle: 给定的矩形,格式 (x1, y1, x2, y2),x1 < x2, y1 < y2。
Returns:
如果点在矩形内,则返回 True,否则返回 False。
"""
x, y = point
x1, y1, x2, y2 = rectangle
if x < x1 or x > x2:
return False
if y < y1 or y > y2:
return False
return True
下面给出一些测试样例,以确保判断是否正确。
>>> is_point_in_rectangle((2, 2), (0, 0, 4, 4))
True
>>> is_point_in_rectangle((0, 0), (0, 0, 4, 4))
True
>>> is_point_in_rectangle((4, 4), (0, 0, 4, 4))
True
>>> is_point_in_rectangle((2, 2), (1, 1, 3, 3))
True
>>> is_point_in_rectangle((5, 5), (0, 0, 4, 4))
False
>>> is_point_in_rectangle((-1, -1), (0, 0, 4, 4))
False
>>> is_point_in_rectangle((2, 5), (0, 0, 4, 4))
False
>>> is_point_in_rectangle((5, 2), (0, 0, 4, 4))
False