Я пытаюсь создать простую визуализацию с большим количеством геометрических объектов, которые нужно нарисовать (более 10000), однако в настоящее время я пытаюсь понять правильный ход программы. Как именно я могу эффективно нарисовать эту группу геометрии в окне?
namespace DataVisualizer
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
Canvas newCanvas = new Canvas();
DrawingGroup tmpDrawing = new DrawingGroup();
GeometryGroup geoGroup = new GeometryGroup();
Brush brush = new SolidColorBrush(Colors.Blue);
int particleCount = 10000;
int particleWidth = 5;
int particleHeight = 5;
Random rnd = new Random();
//create all the geometry and add it too the geometry group
for (int x = 0; x < particleCount; ++x)
{
geoGroup.Children.Add(new RectangleGeometry(new Rect(rnd.Next(500), rnd.Next(500), particleWidth, particleHeight)));
}
tmpDrawing.Children.Add(new GeometryDrawing(brush, null, geoGroup));
newCanvas.Children.Add(new DrawingImage(tmpDrawing)); //does not work
newCanvas.Background = new DrawingImage(tmpDrawing); //does not work
//it seems i dont wana be using UIElement.. how do i effeciently draw geometry?
}
}
}
Я считаю, что в Интернете нет простого объяснения, описывающего общий поток. Любая помощь с благодарностью.