From a0d8ed79b72e3146824aa01bffef021e21bd51fd Mon Sep 17 00:00:00 2001 From: Ano-sys Date: Sat, 3 Jan 2026 15:13:33 +0100 Subject: [PATCH] Added Algorithm Selection --- .../ViewModels/MainWindowViewModel.cs | 13 +- DelaunayTriangulation/Views/MainWindow.axaml | 117 ++++++++++-------- 2 files changed, 75 insertions(+), 55 deletions(-) diff --git a/DelaunayTriangulation/ViewModels/MainWindowViewModel.cs b/DelaunayTriangulation/ViewModels/MainWindowViewModel.cs index 0deeddd..5ecb41f 100644 --- a/DelaunayTriangulation/ViewModels/MainWindowViewModel.cs +++ b/DelaunayTriangulation/ViewModels/MainWindowViewModel.cs @@ -31,6 +31,11 @@ public partial class MainWindowViewModel : ViewModelBase [ObservableProperty] private bool _voronoiVisible = true; [ObservableProperty] private bool _trianglesVisible = true; + [ObservableProperty] private bool _doConnectPoints = false; + [ObservableProperty] private bool _doNearestTriangle = false; + [ObservableProperty] private bool _doDelaunayLib = false; + [ObservableProperty] private bool _doBowyerWatson = true; + [ObservableProperty] private int? _generationDelay = 20; private CancellationTokenSource? _genCts; @@ -541,10 +546,10 @@ public partial class MainWindowViewModel : ViewModelBase VoronoiDiagram.Clear(); await GenerateRandomPoints(PointCount ?? 20, ct); - // await ConnectPoints(ct); - // await Triangulate(ct); - // await DelaunayTriangulateAsync(ct); - await BowyerWatson(ct); + if(DoConnectPoints) await ConnectPoints(ct); + if(DoNearestTriangle) await Triangulate(ct); + if(DoDelaunayLib) await DelaunayTriangulateAsync(ct); + if(DoBowyerWatson) await BowyerWatson(ct); } private bool CanGenerate() => true; diff --git a/DelaunayTriangulation/Views/MainWindow.axaml b/DelaunayTriangulation/Views/MainWindow.axaml index 6aacdee..ac0d5e1 100644 --- a/DelaunayTriangulation/Views/MainWindow.axaml +++ b/DelaunayTriangulation/Views/MainWindow.axaml @@ -55,57 +55,72 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -