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.

[!REMARQUE]

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

Classe de CRect

Graphique de la hiérarchie

&= De CRect::operator

CRect::operator et

CRect::UnionRect

CRect::SubtractRect

CRect::NormalizeRect

IntersectRect