Получить GraphicsPath из Region - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Друзья, спасите! Заблудился в трех соснах: GaphicsPath, Region и Intersect. Вот пример задачи:
и картинка:
Спойлер
Надо получить GraphicsPath желтого Region. Либо сразу GraphicsPath общей области красной и синей фигуры.

Решение задачи: «Получить GraphicsPath из Region»

textual
Листинг программы
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
'…
    DrawRegion(gg, Color.Red, gr) 'рисуем границу области
    If CheckBox1.Checked Then setPoints(gr, gg)
'…
End Sub
Private Sub setPoints(ByVal reg As Region, ByVal g As Graphics)
    Dim ww As Single = 9
    Dim x, y As Single
    Dim rects() As RectangleF = reg.GetRegionScans(New System.Drawing.Drawing2D.Matrix())
    For Each rr As RectangleF In rects
        x = rr.X - ww / 2
        y = rr.Y - ww / 2
        g.FillEllipse(Brushes.Yellow, x, y, ww, ww)
        g.DrawEllipse(Pens.Red, x, y, ww, ww)
        g.FillEllipse(Brushes.Yellow, x + rr.Width, y, ww, ww)
        g.DrawEllipse(Pens.Red, x + rr.Width, y, ww, ww)
        g.FillEllipse(Brushes.Yellow, x + rr.Width, y + rr.Height, ww, ww)
        g.DrawEllipse(Pens.Red, x + rr.Width, y + rr.Height, ww, ww)
        g.FillEllipse(Brushes.Yellow, x, y + rr.Height, ww, ww)
        g.DrawEllipse(Pens.Red, x, y + rr.Height, ww, ww)
    Next
End Sub

Оцени полезность:

6   голосов , оценка 3.833 из 5
Похожие ответы