Aracılığıyla paylaş


CDC::ARC

Eliptik bir yay çizer.

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

Parametreler

  • x1
    (Mantıksal birimler), sınırlayıcı dikdörtgenin sol üst köşesindeki x koordinatını belirtir.

  • y1
    (Mantıksal birimler), sınırlayıcı dikdörtgenin sol üst köşesinde y koordinatı belirtir.

  • x2
    Sınırlayıcı dikdörtgenin (içinde mantıksal birimler) sağ alt köşesindeki x koordinatını belirtir.

  • y2
    (İçinde mantıksal birimler) sınırlayıcı dikdörtgeni sağ alt köşesinin y koordinatı belirtir.

  • x 3
    Arc tanımlar noktanın x koordinatı başlangıç noktası (mantıksal birimler), kullanıcının belirtir.Bu noktada tam olarak yay üzerinde olacak şekilde sahip değil.

  • y3
    Arc tanımlar noktasının y koordinatı başlangıç noktası (mantıksal birimler), kullanıcının belirtir.Bu noktada tam olarak yay üzerinde olacak şekilde sahip değil.

  • x4
    Yayın son noktayı (gelen mantıksal birimler) tanımlayan noktanın x koordinatı belirtir.Bu noktada tam olarak yay üzerinde olacak şekilde sahip değil.

  • y4
    Yayın son noktayı (gelen mantıksal birimler) tanımlayan noktanın y koordinatını belirtir.Bu noktada tam olarak yay üzerinde olacak şekilde sahip değil.

  • lpRect
    Sınırlayıcı dikdörtgenin (içinde mantıksal birimler) belirtir.Ya da geçmesi bir LPRECT veya bir CRect bu parametre nesnesi.

  • ptStart
    X - ve y-koordinatlarının ark tanımlar noktasının başlangıç noktası (mantıksal birimler), belirtir.Bu noktada tam olarak yay üzerinde olacak şekilde sahip değil.Ya da geçmesi bir noktası yapı ya da bir CPoint bu parametre nesnesi.

  • ptEnd
    X - ve y-koordinatlarının yayın bitiş noktasına (mantıksal birimler) tanımlayan noktasının belirtir.Bu noktada tam olarak yay üzerinde olacak şekilde sahip değil.Ya da geçmesi bir noktası yapı ya da bir CPoint bu parametre nesnesi.

Dönüş Değeri

Sıfır olmayan bir değer işlevi başarılı olursa; Aksi halde 0.

Notlar

İşlevi kullanılarak çizilen arc, belirtilen sınırlayıcı dikdörtgeni tarafından tanımlanan Elips bir kesimdir.

Arc fiili başlangıç noktasına çıktığı belirtilen başlangıç noktası üzerinden sınırlayıcı dikdörtgeni merkezden çizilen ray Elips kestiği noktadır.Arc fiili bitiş noktası çıktığı belirtilen bitiş noktası üzerinden sınırlayıcı dikdörtgeni merkezden çizilen ray Elips kestiği noktadır.Saat yönünün tersi yönde yay çizilir.Bir yay kapalı bir şekil olmadığından, doldurulmamış.Genişlik ve Yükseklik dikdörtgenin 2 birim ve daha az 32.767 birimleri büyük olmalıdır.

Örnek

void CDCView::DrawArc(CDC* pDC)
{
   // Fill the client area with a thin circle. The circle's
   // interior is not filled. The circle's perimeter is
   // blue from 6 o'clock to 3 o'clock and red from 3
   // o'clock to 6 o'clock.

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

   // Make a couple of pens.
   CPen penBlue;
   CPen penRed;
   CPen* pOldPen;

   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.

   pOldPen = pDC->SelectObject(&penBlue);

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

   // Draw from 6 o'clock to 3 o'clock, counterclockwise,
   // in a red pen.
   pDC->SelectObject(&penRed);

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

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

Gereksinimler

Başlık: afxwin.h

Ayrıca bkz.

Başvuru

CDC Sınıfı

Hiyerarşi grafik

CDC::Chord

Arc

NOKTASI yapısı

Dikdörtgen yapısı