當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C# Graphics.DrawArc()用法及代碼示例


Graphics.DrawArc方法用於繪製表示由一對坐標,寬度和高度指定的橢圓的一部分的圓弧。此方法的重載列表中有4種方法,如下所示:

  • DrawArc(Pen,Rectangle,Single,Single)方法
  • DrawArc(Pen,RectangleF,Single,Single)方法
  • DrawArc(Pen,Int32,Int32,Int32,Int32,Int32,Int32)方法
  • DrawArc(Pen, Single, Single, Single, Single, Single, Single)方法

DrawArc(Pen, Rectangle, Single, Single)

此方法用於繪製表示由Rectangle結構指定的橢圓的一部分的弧。

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

參數:
pen:確定弧的顏色,寬度和樣式。
rect:確定橢圓恰好適合的最小矩形。
startAngle:角度,以度為單位,從x軸到弧的起點順時針測量。
sweepAngle:角度,以度為單位,從startAngle參數到弧的終點按順時針方向測量。

異常:如果pen為null,則此方法將提供ArgumentNullException。

例:

// C# program to illustrate the  
// DrawArc(Pen, Rectangle, Single, 
// Single) Method 
using System; 
using System.Drawing; 
using System.Drawing.Printing; 
using System.Windows.Forms; 
  
namespace GFG { 
  
class PrintableForm : Form { 
  
    // Main Method 
    public static void Main() 
    { 
        Application.Run(new PrintableForm()); 
    } 
    public PrintableForm() 
    { 
        ResizeRedraw = true; 
    } 
  
    protected override void OnPaint(PaintEventArgs e) 
    { 
        // Create pen. 
        Pen blackPen = new Pen(Color.Black, 3); 
  
        // Reactangle with specifies x1, 
        // y1, x2, y2 respectively 
        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); 
    } 
} 
}

輸出:

DrawArc(Pen, RectangleF, Single, Single)

此方法用於繪製表示由RectangleF結構指定的橢圓的一部分的弧。

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

參數:
pen:確定弧的顏色,寬度和樣式。
rect:確定橢圓恰好適合的最小矩形。
startAngle:從x軸到弧的起點順時針測量的角度,以度為單位。swweepAngle:從startAngle參數到弧的終點沿順時針測量的角度,以度為單位。


異常:如果pen為null,則此方法將提供ArgumentNullException。

範例1:

// C# program to illustrate the  
// DrawArc(Pen, RectangleF,  
// Single, Single) Method 
using System; 
using System.Drawing; 
using System.Drawing.Printing; 
using System.Windows.Forms; 
  
namespace GFG { 
  
class PrintableForm : Form { 
  
    // Main Method 
    public static void Main() 
    { 
  
        Application.Run(new PrintableForm()); 
    } 
  
    public PrintableForm() 
    { 
        ResizeRedraw = true; 
    } 
  
    protected override void OnPaint(PaintEventArgs e) 
    { 
        // Create pen 
        Pen blackPen = new Pen(Color.Black, 3); 
  
        // Reactangle with specifies x1, 
        // y1, x2, y2 respectively 
        RectangleF rect = new RectangleF(0.0F,  
                        0.0F, 100.0F, 200.0F); 
  
        // Create start and sweep 
        // angles on an ellipse. 
        float startAngle = 45.0F; 
        float sweepAngle = 270.0F; 
  
        // Draw arc to screen. 
        e.Graphics.DrawArc(blackPen, rect, 
                  startAngle, sweepAngle); 
    } 
} 
}

輸出:

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

此方法用於繪製表示由一對坐標,寬度和高度指定的橢圓的一部分的弧。

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

參數:
pen:筆確定線條的顏色,寬度和樣式。
x:定義橢圓的矩形左上角的橫坐標。
y:定義橢圓的矩形的左上角的坐標。
width:定義橢圓的矩形的寬度,或更具體地說,我們可以說橢圓的直徑為橫坐標。
height:定義橢圓的矩形的高度,或更確切地說,我們可以用縱坐標表示橢圓的直徑。
startAngle:角度,以度為單位,從x軸到弧的起點順時針測量。
sweepAngle:從startAngle參數到弧的終點,按順時針方向測量的角度(以度為單位)。

異常:如果pen為null,則此方法將提供ArgumentNullException。

範例1:

// C# program to draw a circle 
using System; 
using System.Drawing; 
using System.Drawing.Printing; 
using System.Windows.Forms; 
  
namespace GFG { 
  
class PrintableForm : Form { 
  
    // Main Method 
    public static void Main() 
    { 
        Application.Run(new PrintableForm()); 
    } 
  
    public PrintableForm() 
    { 
        ResizeRedraw = true; 
    } 
  
    protected override void OnPaint(PaintEventArgs e) 
    { 
        // Create pen. 
        Pen blackPen = new Pen(Color.Black, 3); 
  
        // Create coordinates of the rectangle 
        // to the bound ellipse. 
        int x = 0; 
        int y = 0; 
        int width = 100; 
        int height = 200; 
  
        // Create start and sweep  
        // angles on ellipse. 
        int startAngle = 0; 
        int sweepAngle = 360; 
  
        // Draw arc to screen. 
        e.Graphics.DrawArc(blackPen, x, y, width, 
                 height, startAngle, sweepAngle); 
    } 
} 
}

輸出:


範例2:

// C# program to draw GFG 
using System; 
using System.Drawing; 
using System.Drawing.Printing; 
using System.Windows.Forms; 
  
namespace GFG { 
  
class PrintableForm : Form { 
  
    // Main Method 
    public static void Main() 
    { 
        Application.Run(new PrintableForm()); 
    } 
  
    public PrintableForm() 
    { 
        ResizeRedraw = true; 
    } 
  
    protected override void OnPaint(PaintEventArgs e) 
    { 
        // Create pen. 
        Pen blackPen = new Pen(Color.Black, 3); 
  
        // Creates letter G 
        e.Graphics.DrawArc(blackPen, 10, 
                  10, 100, 200, 0, 315); 
  
        e.Graphics.DrawLine(blackPen, 
                  60, 110, 110, 110); 
  
        // Creates letter F 
        e.Graphics.DrawLine(blackPen, 
                  130, 10, 130, 210); 
  
        e.Graphics.DrawLine(blackPen, 
                   130, 10, 200, 10); 
  
        e.Graphics.DrawLine(blackPen,  
                 130, 110, 170, 110); 
  
        // Creates the next letter G 
        e.Graphics.DrawArc(blackPen, 
         210, 10, 100, 200, 0, 315); 
  
        e.Graphics.DrawLine(blackPen, 
                 260, 110, 310, 110); 
    } 
} 
}

輸出:

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

此方法用於繪製表示由一對坐標,寬度和高度指定的橢圓的一部分的弧。

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

參數:
pen:筆確定線條的顏色,寬度和樣式。
x:定義橢圓的矩形左上角的橫坐標。
y:定義橢圓的矩形的左上角的坐標。
width:定義橢圓的矩形的寬度,或更具體地說,我們可以說橢圓的直徑為橫坐標。
height:定義橢圓的矩形的高度,或更具體地說,我們可以說橢圓的直徑為縱坐標。
startAngle:角度,以度為單位,從x軸到弧的起點順時針測量。
sweepAngle:角度,以度為單位,從startAngle參數到弧的終點按順時針方向測量。

異常:如果pen為null,則此方法將提供ArgumentNullException。

例:

// C# program to draw a circle 
using System; 
using System.Drawing; 
using System.Drawing.Printing; 
using System.Windows.Forms; 
  
namespace GFG { 
  
class PrintableForm : Form { 
  
    // Main Method 
    public static void Main() 
    { 
        Application.Run(new PrintableForm()); 
    } 
    public PrintableForm() 
    { 
        ResizeRedraw = true; 
    } 
    protected override void OnPaint(PaintEventArgs e) 
    { 
        // Create pen. 
        Pen blackPen = new Pen(Color.Black, 3); 
  
        // Create coordinates of the rectangle 
        // to the bound ellipse. 
        float x = 0.0F; 
        float y = 0.0F; 
        float width = 100.0F; 
        float height = 200.0F; 
  
        // Create start and sweep 
        // angles on the ellipse. 
        float startAngle = 0.0F; 
        float sweepAngle = 360.0F; 
  
        // Draw arc to screen. 
        e.Graphics.DrawArc(blackPen, x, y, width, 
                 height, startAngle, sweepAngle); 
    } 
} 
}

輸出:

參考:



相關用法


注:本文由純淨天空篩選整理自ShivamChauhan5大神的英文原創作品 Graphics.DrawArc() Method in C# with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。