Partager via


CRect::IntersectRect

Rend CRect égal à l'intersection de deux rectangles existants.

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

Paramètres

  • lpRect1
    Les points à RECT structure ou l'objet d' CRect qui contiennent un rectangle source.

  • lpRect2
    Les points à RECT structure ou l'objet d' CRect qui contiennent un rectangle source.

Valeur de retour

Une valeur différente de zéro si l'intersection n'est pas vide ; 0 si l'intersection est vide.

Notes

l'intersection est le plus grand rectangle contenu dans les deux rectangles existants.

Notes

Les deux rectangles doivent être normaux ou cette fonction peut échouer.Vous pouvez appeler NormalizeRect pour normaliser les rectangles avant d'appeler cette fonction.

Exemple

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

Configuration requise

Header: atltypes.h

Voir aussi

Référence

CRect, classe

Graphique de la hiérarchie

&= De CRect::operator

CRect::operator et

CRect::UnionRect

CRect::SubtractRect

CRect::NormalizeRect

IntersectRect