Rect - SubtractRect()

Вычитает один прямоугольник из другого.

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;
}