VB.NET 도형 원 그리기

2020. 12. 16. 17:26VB.NET

728x90
반응형

① 도형을 그린다.

② 그려진 도형을 비트맵 형식으로 변수에 저장 한다.

③ 도형을 어디든 사용한다.

※ Bitmap형식을 PictureBox에 넣어도 되고, Form에 직접 뿌려도 되고 , 사용하는 건 개인 마음이니까.






도형 을 그린다.

버튼을 하나 만들고 버튼 클릭 시 그림이 그려지도록 할려고 합니다.

임시로 사용할 PictureBox를 만들고, PictureBox를 Control에 붙입니다.



Private Sub Button1_Click_1(sender As Object, e As EventArgs) Handles Button1.Click

    Dim picbox As PictureBox = New PictureBox
    with picbox
    .Name = "etc"
    .Location = New Point(10, 10)
    .Image = Nothing
    End with
    Me.Controls.Add(picbox)

End Sub


② 그려진 도형을 비트맵 형식으로 변수에 저장 한다.

비트맵 형식으로 저장하기 위해서 자체적으로 Bitmap을 Return 해주는 함수를 만들었습니다.

인자 값에 넓이, 높이, 색상 을 넣으면 도형을 그려서 Bitmap을 Return 해주는 겁니다.

 

Private Function DrawingCircle(ByRef width As Integer, ByRef height As Integer, ByRef color As Color) As Bitmap

    Dim bit As Bitmap = New Bitmap(width, height)
    Dim brush As New SolidBrush(color)
    Dim g As Graphics = Graphics.FromImage(bit)

    g.SmoothingMode = Drawing2D.SmoothingMode.HighQuality
    g.FillEllipse(brush, New Rectangle(0, 0, width, height))

    Return bit

End Function


③ 도형을 어디든 사용한다.

Picturebox의 image에다가 함수에서 Return할 bitmap이미지를 넣어주면 됩니다.

사이즈와 색상만 넣으면 자동으로 원을 그려서 변수에 저장을 해줍니다.

Private Sub Button1_Click_1(sender As Object, e As EventArgs) Handles Button1.Click

    Dim picbox As PictureBox = New PictureBox
    with picbox
    .Name = "etc"
    .Location = New Point(10, 10)
    .Image = DrawingCircle(50, 50, Color.Red)
    End with
    Me.Controls.Add(picbox)

End Sub














728x90
반응형