Add beam shear result view

This commit is contained in:
Evgeny Redikultsev
2025-05-18 22:01:52 +05:00
parent b38bad251d
commit d108c52cac
26 changed files with 440 additions and 113 deletions

View File

@@ -148,10 +148,6 @@
</ToolBar>
</ToolBarTray>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition Height="22"/>
@@ -181,26 +177,7 @@
<DataGridTextColumn Header="Description" Width="300" Binding="{Binding Description}"/>
</DataGrid.Columns>
</DataGrid>
<StatusBar Grid.Row="1">
<StatusBarItem>
<StackPanel Orientation="Horizontal">
<TextBlock Text="Valid result(s): "/>
<TextBlock Text="{Binding ValidResultCount}"/>
</StackPanel>
</StatusBarItem>
<StatusBarItem>
<StackPanel Orientation="Horizontal">
<TextBlock Text="Invalid result(s): "/>
<TextBlock Text="{Binding InvalidResultCount}"/>
</StackPanel>
</StatusBarItem>
<StatusBarItem>
<StackPanel Orientation="Horizontal">
<TextBlock Text="Total: "/>
<TextBlock Text="{Binding TotalResultCount}"/>
</StackPanel>
</StatusBarItem>
</StatusBar>
<ContentControl Grid.Row="1" ContentTemplate="{StaticResource ResultValidness}" Content="{Binding ValidResultCounter}"/>
</Grid>
</DockPanel>

View File

@@ -1,7 +1,6 @@
using LoaderCalculator.Data.Matrix;
using LoaderCalculator.Data.Ndms;
using StructureHelper.Infrastructure;
using StructureHelper.Infrastructure.UI.DataContexts;
using StructureHelper.Services.Exports;
using StructureHelper.Services.Reports;
using StructureHelper.Services.Reports.CalculationReports;
@@ -33,6 +32,9 @@ using System.Linq;
using System.Windows;
using System.Windows.Input;
//Copyright (c) 2025 Redikultsev Evgeny, Ekaterinburg, Russia
//All rights reserved.
namespace StructureHelper.Windows.CalculationWindows.CalculatorsViews.ForceCalculatorViews
{
public class ForcesResultsViewModel : ViewModelBase
@@ -62,14 +64,12 @@ namespace StructureHelper.Windows.CalculationWindows.CalculatorsViews.ForceCalcu
private ICommand? showGraphsCommand;
private ICommand? showCrackResult;
private ICommand? showCrackGraphsCommand;
private ICommand? showCrackWidthResult;
//private ICommand? showCrackWidthResult;
private ICommand? showInteractionDiagramCommand;
private ICommand? graphValuepointsCommand;
private ICommand showForceResultCommand;
public int ValidResultCount => resultModel.ForcesResultList.Count(x => x.IsValid == true);
public int InvalidResultCount => resultModel.ForcesResultList.Count(x => x.IsValid == false);
public int TotalResultCount => resultModel.ForcesResultList.Count;
public ValidResultCounterVM ValidResultCounter { get; }
public IForcesResults ForcesResults
{
@@ -430,6 +430,7 @@ namespace StructureHelper.Windows.CalculationWindows.CalculatorsViews.ForceCalcu
{
this.forceCalculator = forceCalculator;
resultModel = forceCalculator.Result as IForcesResults;
ValidResultCounter = new(resultModel.ForcesResultList);
ndmPrimitives = forceCalculator.InputData.Primitives;
}

View File

@@ -0,0 +1,35 @@
using StructureHelper.Infrastructure;
using StructureHelperCommon.Models.Calculators;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace StructureHelper.Windows.CalculationWindows.CalculatorsViews
{
/// <summary>
/// Summary status bar for collection of results
/// </summary>
public class ValidResultCounterVM : ViewModelBase
{
private IEnumerable<IResult> results;
/// <summary>
/// Count of valid results in collection
/// </summary>
public int ValidResultCount => results.Count(x => x.IsValid == true);
/// <summary>
/// Count of invalid results in collection
/// </summary>
public int InvalidResultCount => results.Count(x => x.IsValid == false);
/// <summary>
/// Total count of results
/// </summary>
public int TotalResultCount => results.Count();
public ValidResultCounterVM(IEnumerable<IResult> results)
{
this.results = results;
}
}
}