histogram implemented

This commit is contained in:
EugeneTes
2026-04-08 13:10:34 +02:00
parent 931de47164
commit 2be13501fa
11 changed files with 805 additions and 125 deletions

View File

@@ -6,12 +6,32 @@
Title="Leerform Calibration"
Width="1024" Height="800">
<Window.Styles>
<Style Selector="Button">
<Setter Property="Background" Value="White" />
<Setter Property="Foreground" Value="Red" />
<Setter Property="BorderBrush" Value="Red" />
<Setter Property="BorderThickness" Value="1" />
<Setter Property="FontWeight" Value="Bold" />
</Style>
<Style Selector="Button:pointerover /template/ ContentPresenter">
<Setter Property="Background" Value="#FFEBEE" />
<Setter Property="BorderBrush" Value="Red" />
<Setter Property="TextBlock.Foreground" Value="Red" />
</Style>
<Style Selector="Button:pressed /template/ ContentPresenter">
<Setter Property="Background" Value="#FFCDD2" />
<Setter Property="BorderBrush" Value="Red" />
<Setter Property="TextBlock.Foreground" Value="Red" />
</Style>
</Window.Styles>
<DockPanel>
<!-- Toolbar -->
<StackPanel DockPanel.Dock="Top" Orientation="Horizontal" Spacing="8" Margin="8">
<Button Content="Start Preview" Command="{Binding StartPreviewCommand}" IsEnabled="{Binding !IsPreviewRunning}" />
<Button Content="Stop Preview" Command="{Binding StopPreviewCommand}" IsEnabled="{Binding IsPreviewRunning}" />
<Button Content="Capture Image" Command="{Binding CaptureImageCommand}" />
<Button Content="START PREVIEW" Command="{Binding StartPreviewCommand}" IsEnabled="{Binding !IsPreviewRunning}" />
<Button Content="STOP PREVIEW" Command="{Binding StopPreviewCommand}" IsEnabled="{Binding IsPreviewRunning}" />
<Button Content="CAPTURE IMAGE" Command="{Binding CaptureImageCommand}" />
</StackPanel>
<!-- Status Bar -->
@@ -29,17 +49,14 @@
</Border>
<!-- Settings Panel -->
<Border DockPanel.Dock="Right" Width="260" Padding="12" Background="White">
<ScrollViewer>
<StackPanel Spacing="8">
<Border DockPanel.Dock="Right" Width="290" Padding="12" Background="White">
<ScrollViewer HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto">
<StackPanel Spacing="8" Margin="0,0,20,0">
<TextBlock Text="Calibration Settings" FontWeight="Bold" FontSize="14" Foreground="Black" />
<Button Content="Calibrate" Command="{Binding RunCalibrationCommand}" Margin="0,4"
Background="Red" Foreground="White" FontWeight="Bold" />
<Button Content="Clear Images" Command="{Binding ClearCalibrationImagesCommand}" Margin="0,4"
Background="White" Foreground="Red" FontWeight="Bold"
BorderBrush="Red" BorderThickness="1" />
<Button Content="CALIBRATE" Command="{Binding RunCalibrationCommand}" Margin="0,4" />
<Button Content="CLEAR IMAGES" Command="{Binding ClearCalibrationImagesCommand}" Margin="0,4" />
<Separator Margin="0,8" />
@@ -85,15 +102,12 @@
<Separator Margin="0,8" />
<Button Content="Set Reference" Command="{Binding SetReferenceHistogramCommand}" Margin="0,4"
Background="#2E7D32" Foreground="White" FontWeight="Bold" HorizontalAlignment="Stretch" />
<TextBlock Text="✓ Reference set" Foreground="LimeGreen" IsVisible="{Binding HasReferenceHistogram}" />
<Button Content="SET REFERENCE (RESETS SPLINES)" Command="{Binding SetReferenceHistogramCommand}" Margin="0,4"
HorizontalAlignment="Stretch" />
<TextBlock Text="✓ Average spline set" Foreground="LimeGreen" IsVisible="{Binding HasAverageSpline}" />
<TextBlock Text="Tolerance" Foreground="Black" Margin="0,4,0,0" />
<NumericUpDown Value="{Binding Tolerance}" Minimum="0" Maximum="1" Increment="0.05" FormatString="0.00" />
<Button Content="Test Pattern" Command="{Binding TestPatternCommand}" Margin="0,4"
Background="#1565C0" Foreground="White" FontWeight="Bold" HorizontalAlignment="Stretch" />
<Button Content="TEST PATTERN" Command="{Binding TestPatternCommand}" Margin="0,4"
HorizontalAlignment="Stretch" />
<Separator Margin="0,8" />
@@ -105,8 +119,8 @@
</MultiBinding>
</TextBlock.Text>
</TextBlock>
<Button Content="Save Recipe" Command="{Binding SaveRecipeCommand}" Margin="0,4"
Background="#6A1B9A" Foreground="White" FontWeight="Bold" HorizontalAlignment="Stretch" />
<Button Content="SAVE RECIPE" Command="{Binding SaveRecipeCommand}" Margin="0,4"
HorizontalAlignment="Stretch" />
</StackPanel>
</ScrollViewer>
</Border>