Share via


CDC::Chord

Dessine une pression simultanée (une figure fermée limitées par l'intersection d'une ellipse et un segment de ligne).

BOOL Chord(
   int x1,
   int y1,
   int x2,
   int y2,
   int x3,
   int y3,
   int x4,
   int y4 
);
BOOL Chord(
   LPCRECT lpRect,
   POINT ptStart,
   POINT ptEnd 
);

Paramètres

  • x1
    Spécifie la coordonnée x du coin supérieur gauche du rectangle englobant de la pression simultanée (en unités logiques).

  • y1
    Spécifie l'ordonnée du coin supérieur gauche du rectangle englobant de la pression simultanée (en unités logiques).

  • x2
    Spécifie la coordonnée x du coin inférieur droit du rectangle englobant de la pression simultanée (en unités logiques).

  • y2
    Spécifie l'ordonnée du coin inférieur droit du rectangle englobant de la pression simultanée (en unités logiques).

  • x3
    Spécifie la coordonnée x du point qui définit le point de départ de la pression simultanée (en unités logiques).

  • y3
    Spécifie la coordonnée y du point qui définit le point de départ de la pression simultanée (en unités logiques).

  • x4
    Spécifie la coordonnée x du point qui définit le point de terminaison de la pression simultanée (en unités logiques).

  • y4
    Spécifie la coordonnée y du point qui définit le point de terminaison de la pression simultanée (en unités logiques).

  • lpRect
    Spécifie le rectangle englobant (en unités logiques).Vous pouvez passer LPRECT ou un objet de CRect pour ce paramètre.

  • ptStart
    Spécifie les coordonnées x et y du point qui définit le point de départ de la pression simultanée (en unités logiques).Ce point ne doit pas exactement reposer sur la pression simultanée.Vous pouvez passer une structure de POINT ou un objet d' CPoint pour ce paramètre.

  • ptEnd
    Spécifie les coordonnées x et y du point qui définit le point de terminaison de la pression simultanée (en unités logiques).Ce point ne doit pas exactement reposer sur la pression simultanée.Vous pouvez passer une structure de POINT ou un objet de CPoint pour ce paramètre.

Valeur de retour

Une valeur différente de zéro si la fonction est réussie ; sinon 0.

Notes

(x1, y1) et (x2, y2) des paramètres spécifiez le supérieur gauche et les angles inférieur droit, respectivement, d'un rectangle englobant de l'ellipse qui fait partie de la pression simultanée.(X3, y3) et (x4, y4) des paramètres spécifiez les points de terminaison d'une ligne qui recoupe l'ellipse.La pression simultanée est dessinée à l'aide de le stylet sélectionné et remplie à l'aide de le pinceau sélectionné.

L'illustration dessinée par la fonction d' Chord s'étend jusqu'à, mais pas les coordonnées de droit et inférieur.Cela signifie que la hauteur de l'image est y2 – y1 et la largeur de l'illustration est x2 – x1.

Exemple

void CDCView::DrawChord(CDC* pDC)
{
   // Fill the client area with a circle. The circle is
   // blue and filled with blue, but has a chord cut out
   // of it from 3 o'clock to 6 o'clock. That chord is
   // red and filled with a red diagonal hatch.

   // Get the client area.
   CRect rectClient;
   GetClientRect(rectClient);

   // Make a couple of pens and similar brushes.
   CPen penBlue, penRed;
   CBrush brushBlue, brushRed;
   CBrush* pOldBrush;
   CPen* pOldPen;

   brushBlue.CreateSolidBrush(RGB(0, 0, 255));
   brushRed.CreateHatchBrush(HS_FDIAGONAL, RGB(255, 0, 0));
   penBlue.CreatePen(PS_SOLID | PS_COSMETIC, 1, RGB(0, 0, 255));
   penRed.CreatePen(PS_SOLID | PS_COSMETIC, 1, RGB(255, 0, 0));

   // Draw from 3 o'clock to 6 o'clock, counterclockwise,
   // in a blue pen with a solid blue fill.
   pOldPen = pDC->SelectObject(&penBlue);
   pOldBrush = pDC->SelectObject(&brushBlue);

   pDC->Chord(rectClient,
      CPoint(rectClient.right, rectClient.CenterPoint().y),
      CPoint(rectClient.CenterPoint().x, rectClient.right));

   // Draw the remaining quarter chord from 6 o'clock
   // to 3 o'clock, counterclockwise, in a red pen
   // with the hatched brush.
   pDC->SelectObject(&penRed);
   pDC->SelectObject(&brushRed);

   // Keep the same parameters, but reverse start and
   // end points.
   pDC->Chord(rectClient,
      CPoint(rectClient.CenterPoint().x, rectClient.right),
      CPoint(rectClient.right, rectClient.CenterPoint().y));

   // Restore the previous pen.
   pDC->SelectObject(pOldPen);
}

Configuration requise

Header: afxwin.h

Voir aussi

Référence

CDC, classe

Graphique de la hiérarchie

CDC::Arc

Chord

POINT, structure