Рисование окружности WPF C#

public partial class MainWindow : Window 
{
    private Point startPoint; 
    private Rectangle rect;
    
    
    private void paintSurface_MouseUp(object sender, MouseButtonEventArgs e) 
    { 
    
    rect = null; 
    
    }
    
    
    private void paintSurface_MouseDown(object sender,MouseButtonEventArgs e) 
    { 
    startPoint = e.GetPosition(paintSurface); 
    
    rect = new Rectangle 
    { 
    Stroke = pen[cnt].Brush, 
    StrokeThickness = pen[cnt].Thickness 
    }; 
    Canvas.SetLeft(rect, startPoint.X); 
    Canvas.SetTop(rect, startPoint.Y); 
    paintSurface.Children.Add(rect); 
    }
    private void paintSurface_MouseMove(object sender,MouseEventArgs e) 
    {
    { 
    if (e.LeftButton == MouseButtonState.Released || rect == null) 
    return; 
    
    var pos = e.GetPosition(paintSurface); 
    
    var x = Math.Min(pos.X, startPoint.X); 
    var y = Math.Min(pos.Y, startPoint.Y); 
    
    var w = Math.Max(pos.X, startPoint.X) - x; 
    var h = Math.Max(pos.Y, startPoint.Y) - y; 
    
    rect.Width = w; 
    rect.Height = h; 
    
    Canvas.SetLeft(rect, x); 
    Canvas.SetTop(rect, y); 
    
    }
    }
}

Нашел на stackoverflow код для рисования прямоугольников.Нужно по аналогии с этим кодом сделать рисование окружностей.Я знаю,что за это отвечает класс Ellipse,но там надо как-то по-другому делать немного.Как это сделать?И еще для треугольников как можно сделать?


Ответы (0 шт):