netlib.narod.ru< Назад | Оглавление | Далее >

Эллипсы: простой метод

Вы уже знаете, как нарисовать эллипс при помощи метода DrawLines, но есть и более простой подход, использующий те же аргументы, что и DrawRectangle:


Методы DrawEllipse класса Graphics



void DrawEllipse(Pen pen, int x, int y, int cx, int cy)
void DrawEllipse(Pen pen, float, x, float y, float cx, float cy)
void DrawEllipse(Pen pen, Rectangle rect)
void DrawEllipse(Pen pen, RectangleF rectf)


Методы DrawEllipse соответствуют методам DrawRectangle. Например, здесь нарисован эллипс с шириной и высотой, равными 3:


Рис. 5.9.

Если задать ширину и высоту равными 1, в результате будет нарисован закрашенный квадрат со стороной 2 пиксела.

Это означает (как и в случае DrawRectangle}, что нужно уменьшить ширину и высоту эллипса на 1, чтобы он уместился в области размером cx на cy.

ClientEllipse.cs

  //----------------------------------------------
  // ClientEllipse.cs (C) 2001 by Charles Petzold
  //----------------------------------------------
  using System;
  using System.Drawing;
  using System.Windows.Forms;

  class ClientEllipse: PrintableForm
  {
      public new static void Main()
      {
          Application.Run(new ClientEllipse());
      }
      public ClientEllipse()
      {
          Text = "Client Ellipse";
      }
      protected override void DoPage(Graphics grfx, Color clr, int cx, int cy)
      {
          grfx.DrawEllipse(new Pen(clr), 0, 0, cx - 1, cy - 1);
      }
  }

Если два последних аргумента метода DrawEllipse приравнять cx и cy, то правая и нижняя стороны фигуры окажутся несколько обрезанными.


netlib.narod.ru< Назад | Оглавление | Далее >

Сайт управляется системой uCoz