Prvi način kako da se nacrta kružni luk:

    DrawArc(Pen, Rectangle, Single, Single)

Crta luk koji predstavlja deo elipse specificiran strukturom pravougaonika.

    public void DrawArc (System.Drawing.Pen pen, System.Drawing.Rectangle rect, float startAngle, float sweepAngle)

Parametri:

pen Pen    -  Olovka koja određuje boju, širinu i stil luka.

       rect Rectangle - Rectangle struktura koja definiše granice elipse.

startAngle Single - Ugao u stepenima meren u smeru kazaljke na satu od x-ose do početne tačke luka.

sweepAngle Single - Ugao u stepenima meren u smeru kazaljke na satu od parametra startAngle do krajnje tačke luka.


 Primer:

Sledeći primer koda je dizajniran za upotrebu sa Windovs Formama i zahteva PaintEventArgs e, što je parametar Event Handler-a Paint. Kod obavlja sledeće radnje:

  • Pravi crnu olovku
  • Pravi pravougaonik da poveže elipsu.
  • Definiše uglove početka (45 stepeni) i skretanja (270 stepeni).
  • Crta eliptični luk na ekran.

Rezultat je delimična elipsa kojoj nedostaje segment između + i - 45 stepeni x ose.

  private void DrawArcRectangle(PaintEventArgs e)
{
// Create pen.
Pen blackPen= new Pen(Color.Black, 3);

// Create rectangle to bound ellipse.
Rectangle rect = new Rectangle(0, 0, 100, 200);

// Create start and sweep angles on ellipse.
float startAngle = 45.0F;
float sweepAngle = 270.0F;

// Draw arc to screen.
e.Graphics.DrawArc(blackPen, rect, startAngle, sweepAngle);
}

Napomena:  Ova metoda crta luk koji je deo perimetra elipse. Elipsa je definisana granicama pravougaonika. Luk je deo perimetra elipse između parametra startAngle i parametara startAngle + sweepAngle.


Varijante koje se mogu koristiti:

DrawArc(Pen, Rectangle, Single, Single)

Crta luk koji predstavlja deo elipse specificiran strukturom Rectangle.

public void DrawArc (System.Drawing.Pen pen, System.Drawing.Rectangle rect, float startAngle, float sweepAngle);


DrawArc(Pen, RectangleF, Single, Single)

Crta luk koji predstavlja deo elipse specificiran strukturom RectangleF.

public void DrawArc (System.Drawing.Pen pen, System.Drawing.RectangleF rect, float startAngle, float sweepAngle);


DrawArc(Pen, Int32, Int32, Int32, Int32, Int32, Int32)

Crta luk koji predstavlja deo elipse specificiran parom koordinata, širinom i visinom.

public void DrawArc (System.Drawing.Pen pen, int x, int y, int width, int height, int startAngle, int sweepAngle);

DrawArc(Pen, Single, Single, Single, Single, Single, Single)

Crta luk koji predstavlja deo elipse specificiran parom koordinata, širinom i visinom.

public void DrawArc (System.Drawing.Pen pen, float x, float y, float width, float height, float startAngle, float sweepAngle);


VEŽBA:

Kreirati na formi Panel u kojem se crta ovaj kružni luk.


izvor:

https://docs.microsoft.com/en-us/dotnet/api/system.drawing.graphics.drawarc?view=dotnet-plat-ext-6.0

Last modified: Sunday, 12 December 2021, 10:45 PM