feat: AnalysisView removed particle info

This commit is contained in:
2026-08-10 09:00:01 +03:00
parent 089df7d524
commit 68843c6f95
+1 -349
View File
@@ -956,354 +956,6 @@
</Grid> </Grid>
<!-- Гранулы -->
<Grid>
<Grid IsVisible="{Binding Path=Record.ParticlesCount, Converter={StaticResource GreaterThanConverter}, ConverterParameter=0}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.ColumnSpacing>5</Grid.ColumnSpacing>
<Grid Grid.Column="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.ColumnSpacing>5</Grid.ColumnSpacing>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" /> <!-- ParticleProcessedArea (подпись) | ParticleOpticalIntegral (подпись) -->
<RowDefinition Height="Auto" /> <!-- ParticleProcessedArea (поле ) | ParticleOpticalIntegral (поле ) -->
<RowDefinition Height="Auto" /> <!-- ParticleUnprocessedArea (подпись) | ParticleHotspotArea (подпись) -->
<RowDefinition Height="Auto" /> <!-- ParticleUnprocessedArea (поле ) | ParticleHotspotArea (поле ) -->
<RowDefinition Height="Auto" /> <!-- ParticleInnerStdDev (подпись) | ParticleInnerHeterogeneity (подпись) -->
<RowDefinition Height="Auto" /> <!-- ParticleInnerStdDev (поле ) | ParticleInnerHeterogeneity (поле ) -->
<RowDefinition Height="*" /> <!-- Пустое пространство -->
<RowDefinition Height="Auto" /> <!-- Кнопка влево | Кнопка вправо -->
</Grid.RowDefinitions>
<Grid.RowSpacing>5</Grid.RowSpacing>
<!-- ParticleProcessedArea (подпись) -->
<TextBlock
Classes="mini"
Grid.Column="0"
Grid.Row="0"
Text="Обр. площадь:"
/>
<!-- ParticleProcessedArea (поле ) -->
<TextBox
Classes="singleline"
Grid.Column="0"
Grid.Row="1"
IsReadOnly="True"
PlaceholderText="Обр. площадь"
Text="{Binding Record.ParticleProcessedArea}"
/>
<!-- ParticleOpticalIntegral (подпись) -->
<TextBlock
Classes="mini"
Grid.Column="1"
Grid.Row="0"
Text="Инт. опт. показатель:"
/>
<!-- ParticleOpticalIntegral (поле ) -->
<TextBox
Classes="singleline"
Grid.Column="1"
Grid.Row="1"
IsReadOnly="True"
PlaceholderText="Инт. опт. показатель"
Text="{Binding Record.ParticleOpticalIntegral}"
/>
<!-- ParticleUnprocessedArea (подпись) -->
<TextBlock
Classes="mini"
Grid.Column="0"
Grid.Row="2"
Text="Необр. площадь:"
/>
<!-- ParticleUnprocessedArea (поле ) -->
<TextBox
Classes="singleline"
Grid.Column="0"
Grid.Row="3"
IsReadOnly="True"
PlaceholderText="Необр. площадь"
Text="{Binding Record.ParticleUnprocessedArea}"
/>
<!-- ParticleHotspotArea (подпись) -->
<TextBlock
Classes="mini"
Grid.Column="1"
Grid.Row="2"
Text="Горячая площадь:"
/>
<!-- ParticleHotspotArea (поле ) -->
<TextBox
Classes="singleline"
Grid.Column="1"
Grid.Row="3"
IsReadOnly="True"
PlaceholderText="Горячая площадь"
Text="{Binding Record.ParticleHotspotArea}"
/>
<!-- ParticleInnerStdDev (подпись) -->
<TextBlock
Classes="mini"
Grid.Column="0"
Grid.Row="4"
Text="Ср. кв. откл.:"
/>
<!-- ParticleInnerStdDev (поле ) -->
<TextBox
Classes="singleline"
Grid.Column="0"
Grid.Row="5"
IsReadOnly="True"
PlaceholderText="Ср. кв. откл."
Text="{Binding Record.ParticleInnerStdDev}"
/>
<!-- ParticleInnerHeterogeneity (подпись) -->
<TextBlock
Classes="mini"
Grid.Column="1"
Grid.Row="4"
Text="Неоднородность:"
/>
<!-- ParticleInnerHeterogeneity (поле ) -->
<TextBox
Classes="singleline"
Grid.Column="1"
Grid.Row="5"
IsReadOnly="True"
PlaceholderText="Неоднородность"
Text="{Binding Record.ParticleInnerHeterogeneity}"
/>
<!-- Кнопка влево -->
<Button
Command="{Binding Record.PreviousParticle}"
Grid.Column="0"
Grid.Row="7"
HorizontalAlignment="Stretch"
HorizontalContentAlignment="Center"
VerticalContentAlignment="Center"
>
<TextBlock Text="◀"/>
</Button>
<!-- Кнопка вправо -->
<Button
Command="{Binding Record.NextParticle}"
Grid.Column="1"
Grid.Row="7"
HorizontalAlignment="Stretch"
HorizontalContentAlignment="Center"
VerticalContentAlignment="Center"
>
<TextBlock Text="▶"/>
</Button>
</Grid>
<!-- Изображения -->
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/> <!-- Изображения -->
<ColumnDefinition Width="Auto"/> <!-- Кнопки -->
</Grid.ColumnDefinitions>
<Grid.ColumnSpacing>5</Grid.ColumnSpacing>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid.RowSpacing>5</Grid.RowSpacing>
<!-- Кнопки переключения -->
<!-- ParticleImage -->
<Button
Classes="vertical"
Command="{Binding Record.SwitchToImageCommand}"
Grid.Column="1"
Grid.Row="0"
VerticalAlignment="Stretch"
>
<TextBlock Text="1"/>
</Button>
<!-- ParticleMaskImage -->
<Button
Classes="vertical"
Command="{Binding Record.SwitchToMaskImageCommand}"
Grid.Column="1"
Grid.Row="1"
VerticalAlignment="Stretch"
>
<TextBlock Text="2"/>
</Button>
<!-- ParticleResultImage -->
<Button
Classes="vertical"
Command="{Binding Record.SwitchToResultImageCommand}"
Grid.Column="1"
Grid.Row="2"
VerticalAlignment="Stretch"
>
<TextBlock Text="3"/>
</Button>
<!-- Изображения -->
<Grid Grid.Column="0" Grid.Row="0" Grid.RowSpan="3">
<!-- Изображения -->
<Grid x:Name="PraticleImagesGrid" Bounds="{Binding Record.ParticleImagesBounds, Mode=OneWayToSource, UpdateSourceTrigger=PropertyChanged}">
<!-- Изображения -->
<!-- ParticleImage -->
<Grid IsVisible="{Binding Record.ParticleImageIsVisible}">
<!-- Изображение -->
<core:ZoomPanImage
Background="Black"
CanUserZoomPan="False"
HorizontalAlignment="Stretch"
ImageSource="{Binding Record.Image.Image}"
PanX="{Binding Record.ParticleImagesPanX}"
PanY="{Binding Record.ParticleImagesPanY}"
VerticalAlignment="Stretch"
Zoom="{Binding Record.ParticleImagesZoom}"
>
<core:ZoomPanImage.IsVisible>
<MultiBinding Converter="{x:Static BoolConverters.And}">
<Binding Converter="{x:Static StringConverters.IsNotNullOrEmpty}" Path="Record.Image.Data" />
</MultiBinding>
</core:ZoomPanImage.IsVisible>
</core:ZoomPanImage>
<!-- Оверлей "Изображение отсутствует" -->
<TextBlock
HorizontalAlignment="Center"
Text="Изображение отсутствует"
VerticalAlignment="Center"
>
<TextBlock.IsVisible>
<MultiBinding Converter="{x:Static BoolConverters.And}">
<Binding Converter="{x:Static StringConverters.IsNullOrEmpty}" Path="Record.Image.Data" />
</MultiBinding>
</TextBlock.IsVisible>
</TextBlock>
</Grid>
<!-- ParticleMaskImage -->
<Grid IsVisible="{Binding Record.ParticleMaskImageIsVisible}">
<!-- Изображение -->
<core:ZoomPanImage
Background="Black"
CanUserZoomPan="False"
HorizontalAlignment="Stretch"
ImageSource="{Binding Record.MaskImage.Image}"
PanX="{Binding Record.ParticleImagesPanX}"
PanY="{Binding Record.ParticleImagesPanY}"
VerticalAlignment="Stretch"
Zoom="{Binding Record.ParticleImagesZoom}"
>
<core:ZoomPanImage.IsVisible>
<MultiBinding Converter="{x:Static BoolConverters.And}">
<Binding Converter="{x:Static StringConverters.IsNotNullOrEmpty}" Path="Record.MaskImage.Data" />
</MultiBinding>
</core:ZoomPanImage.IsVisible>
</core:ZoomPanImage>
<!-- Оверлей "Изображение отсутствует" -->
<TextBlock
HorizontalAlignment="Center"
Text="Изображение отсутствует"
VerticalAlignment="Center"
>
<TextBlock.IsVisible>
<MultiBinding Converter="{x:Static BoolConverters.And}">
<Binding Converter="{x:Static StringConverters.IsNullOrEmpty}" Path="Record.MaskImage.Data" />
</MultiBinding>
</TextBlock.IsVisible>
</TextBlock>
</Grid>
<!-- ParticleResultImage -->
<Grid IsVisible="{Binding Record.ParticleResultImageIsVisible}">
<!-- Изображение -->
<core:ZoomPanImage
Background="Black"
CanUserZoomPan="False"
HorizontalAlignment="Stretch"
ImageSource="{Binding Record.ResultImage.Image}"
PanX="{Binding Record.ParticleImagesPanX}"
PanY="{Binding Record.ParticleImagesPanY}"
VerticalAlignment="Stretch"
Zoom="{Binding Record.ParticleImagesZoom}"
>
<core:ZoomPanImage.IsVisible>
<MultiBinding Converter="{x:Static BoolConverters.And}">
<Binding Converter="{x:Static StringConverters.IsNotNullOrEmpty}" Path="Record.ResultImage.Data" />
</MultiBinding>
</core:ZoomPanImage.IsVisible>
</core:ZoomPanImage>
<!-- Оверлей "Изображение отсутствует" -->
<TextBlock
HorizontalAlignment="Center"
Text="Изображение отсутствует"
VerticalAlignment="Center"
>
<TextBlock.IsVisible>
<MultiBinding Converter="{x:Static BoolConverters.And}">
<Binding Converter="{x:Static StringConverters.IsNullOrEmpty}" Path="Record.ResultImage.Data" />
</MultiBinding>
</TextBlock.IsVisible>
</TextBlock>
</Grid>
</Grid>
</Grid>
</Grid>
</Grid>
<!-- Оверлей "Нет информации" -->
<TextBlock
HorizontalAlignment="Center"
IsVisible="{Binding Path=Record.ParticlesCount, Converter={StaticResource LessThanOrEqualConverter}, ConverterParameter=0}"
Text="Нет информации"
VerticalAlignment="Center"
/>
</Grid>
</core:SectionPanel> </core:SectionPanel>
<!-- Кнопка влево --> <!-- Кнопка влево -->
@@ -1635,7 +1287,7 @@
<!-- Шаблон элемента --> <!-- Шаблон элемента -->
<ListBox.ItemTemplate> <ListBox.ItemTemplate>
<DataTemplate x:DataType="vm:SampleCalibrationViewModel+MenuItemViewModel"> <DataTemplate x:DataType="vm:AnalysisViewModel+MenuItemViewModel">
<Border Margin="3" CornerRadius="5"> <Border Margin="3" CornerRadius="5">
<TextBlock <TextBlock
Classes="mini" Classes="mini"