CRect::IntersectRect
Выполняет CRect равным пересечению 2 существующих прямоугольников.
BOOL IntersectRect(
LPCRECT lpRect1,
LPCRECT lpRect2
) throw( );
Параметры
lpRect1
Указывает на RECT составляющих или объекту CRect, содержащие прямоугольник источника.lpRect2
Указывает на RECT составляющих или объекту CRect, содержащие прямоугольник источника.
Возвращаемое значение
Ненулевой, если пересечение не пуст; 0, если пересечение пусто.
Заметки
Пересечение самый большой прямоугольник, содержащихся в обоих существующих прямоугольниках.
Примечание
Оба прямоугольников, необходимые для нормализации, либо эта функция может завершиться ошибкой.Можно вызвать NormalizeRect для нормализации прямоугольники перед вызовом этой функции.
Пример
CRect rectOne(125, 0, 150, 200);
CRect rectTwo(0, 75, 350, 95);
CRect rectInter;
rectInter.IntersectRect(rectOne, rectTwo);
// rectInter is now (125, 75, 150, 95)
ASSERT(rectInter == CRect(125, 75, 150, 95));
// operator &= can do the same task:
CRect rectInter2 = rectOne;
rectInter2 &= rectTwo;
ASSERT(rectInter2 == CRect(125, 75, 150, 95));
Требования
Header: atltypes.h