Share via


CRect::IntersectRect

Rende CRect uguale all'intersezione di due rettangoli esistenti.

BOOL IntersectRect( 
   LPCRECT lpRect1, 
   LPCRECT lpRect2  
) throw( );

Parametri

  • lpRect1
    I punti su RECT struttura o all'oggetto CRect che contengono un rettangolo di origine.

  • lpRect2
    Punta a RECT struttura o all'oggetto CRect che contengono un rettangolo di origine.

Valore restituito

Diverso da zero se l'intersezione non è vuota; 0 se l'intersezione è vuota.

Note

l'intersezione è il più grande rettangolo contenuto in entrambi i rettangoli esistenti.

[!NOTA]

Entrambi i rettangoli devono essere normalizzati o la funzione può non riuscire.È possibile chiamare NormalizeRect per normalizzare i rettangoli prima di chiamare la funzione.

Esempio

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

Requisiti

Header: atltypes.h

Vedere anche

Riferimenti

Classe di CRect

Grafico della gerarchia

&= Di CRect::operator

CRect::operator &

CRect::UnionRect

CRect::SubtractRect

CRect::NormalizeRect

IntersectRect