C#에서 원 그리기

Bilal Shahid 2023년10월12일
  1. Drawing.Ellipse() 메서드를 사용하여 C#에서 원 그리기
  2. FillEllipse() 메서드를 사용하여 C#에서 원 채우기
C#에서 원 그리기

이 기사에서는 C#에서 원을 그리는 방법을 살펴보겠습니다.

Drawing.Ellipse() 메서드를 사용하여 C#에서 원 그리기

System.Drawing에는 명시적인 원 그리기가 없습니다. 동일한 기능을 제공하는 Drawing.Ellipse() 메서드를 사용하거나 Windows.FORMS(.NET FRAMEWORK)로 새 FORM을 생성하여 인터페이스를 실험할 수 있습니다.

.NET Framework를 사용하여 C#에서 원 그리기

FORM으로 부팅했을 때 Paint 메소드가 호출되는지 확인하십시오. 양식을 두 번 클릭하면 속성이 열립니다.

.NET Framwork에서 속성 변경

EVENTS 섹션으로 전환합니다.

이벤트 섹션에서 페인트를 두 번 클릭하여 함수를 생성

이제 EVENTS 섹션 내에서 PAINT를 찾을 때까지 아래로 스크롤하고 PAINT 기능을 생성하기 위해 두 번 클릭합니다.

페인트 기능

이제 System.Drawing을 사용하여 ELLIPSE를 만든 다음 Ellipse 옵션을 선택합니다.

e.Graphics.DrawEllipse(new Pen(System.Drawing.Color.Red), new Rectangle(10, 10, 50, 50));

매개변수에서 색상이 빨간색인 새 PEN을 선택했습니다. 다음 매개변수는 원을 캡슐화하는 RECTANGLE을 그리는 경향이 있습니다.

처음 두 매개변수는 원점 ( x 및 y )을 나타내고 마지막 두 매개변수는 x축과 y축의 크기인 원의 크기와 같습니다.

출력:

C에서 원 그리기

FillEllipse() 메서드를 사용하여 C#에서 원 채우기

위 출력에서 원을 채우기 위해 FILLELLIPSE() 함수를 사용합니다.

e.Graphics.FillEllipse(Brushes.Red, 10, 10, 50, 50);

FillEllipse() 함수에 대해 Drawing.Ellipse()와 동일한 지점을 정의하여 올바른 영역이 채워지도록 했습니다. 첫 번째 매개변수로 Brushes.Red 브러시를 선택했습니다.

출력:

FillEllipse() 메서드를 사용하여 C에서 원 채우기

전체 코드 조각:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApp1 {
  public partial class Form1 : Form {
    public Form1() {
      InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e) {}

    private void Form1_Paint(object sender, PaintEventArgs e) {
      e.Graphics.DrawEllipse(new Pen(System.Drawing.Color.Red), new Rectangle(10, 10, 50, 50));

      e.Graphics.FillEllipse(Brushes.Red, 10, 10, 50, 50);
    }

    private void Form1_MouseHover(object sender, EventArgs e) {}
  }
}

이것이 C#에서 원을 그리는 방법입니다. 이 내용을 잘 알고 필요에 따라 수정할 수 있기를 바랍니다.

작가: Bilal Shahid
Bilal Shahid avatar Bilal Shahid avatar

Hello, I am Bilal, a research enthusiast who tends to break and make code from scratch. I dwell deep into the latest issues faced by the developer community and provide answers and different solutions. Apart from that, I am just another normal developer with a laptop, a mug of coffee, some biscuits and a thick spectacle!

GitHub