Вычитает один прямоугольник из другого.
BOOL SubtractRect ( LPRECT lprcDst, // результирующий прямоугольник CONST RECT *lprcSrc1, // первый прямоугольник CONST RECT *lprcSrc2 // второй прямоугольник );
Чтобы эта функция правильно сработала два прямоугольник должны полностью пересекаться по одной стороне.
При успешном выполнении функция возвращает ненулевое значение.
// TestAPI.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "windows.h" #include "iostream.h" void main() { RECT r1; RECT r2; RECT r3; SetRect(&r1,50,50,150,150); SetRect(&r2,100,70,120,100); SetRectEmpty(&r3); if (SubtractRect(&r3,&r2,&r1)) cout << "OK Subtract" << endl; else cout << "Bad Subtract" << endl; SetRect(&r2,100,70,120,300); SetRectEmpty(&r3); if (SubtractRect(&r3,&r2,&r1)) cout << "OK Subtract" << endl; else cout << "Bad Subtract" << endl; }