我有两个矩形,一个基本上是另一个放大,就像这样
我想知道一组xy坐标是否属于XOR差异,即
这样做的最佳数学是什么?
Difference (XOR) between two rectangles, as rectangles?做了我想要的,但不完全是,而且看起来有点......不优雅。
或者,如果x / y坐标在外部矩形边缘的10%范围内,我可以处理返回“true”的内容
答案 0 :(得分:2)
bool isInIntersection(pt, rect1, rect2)
{
return isInRect(pt, rect1) && !isInRect(pt, rect2);
}
bool isInRect(pt, rect)
{
return (pt.x >= rect.x1) && (pt.x < rect.x2)
&& (pt.y >= rect.y1) && (pt.y < rect.y2);
}
我假设rect1
是外部矩形。
答案 1 :(得分:1)
这是javascript中的一个示例,用于查找点是否在矩形中。 Point-in-rectangle testing 那么如果测试它是否在Rectangle1中,如果是,如果它不在Rectangle2中,则只是一个问题。