Add trace crack result

This commit is contained in:
Evgeny Redikultsev
2024-12-30 15:42:57 +05:00
parent ba70e0d214
commit 65253a907b
42 changed files with 685 additions and 125 deletions

View File

@@ -5,6 +5,8 @@ using StructureHelperCommon.Models;
using StructureHelperCommon.Models.Calculators;
using StructureHelperCommon.Models.Forces;
using StructureHelperCommon.Models.Loggers;
using StructureHelperLogics.Models.Materials;
using StructureHelperLogics.NdmCalculations.Analyses.ByForces;
using StructureHelperLogics.NdmCalculations.Primitives;
using System;
using System.Collections.Generic;
@@ -14,6 +16,7 @@ using System.Threading.Tasks;
namespace StructureHelperLogics.NdmCalculations.Cracking
{
/// <inheritdoc/>
public class CrackCalculator : ICrackCalculator
{
const LimitStates limitState = LimitStates.SLS;
@@ -73,11 +76,11 @@ namespace StructureHelperLogics.NdmCalculations.Cracking
{
PrepareNewResult();
CheckInputData();
TraceLogger?.AddMessage(LoggerStrings.LogicType(this), TraceLogStatuses.Service);
TraceInputData();
try
{
ProcessCalculations();
TraceLogger?.AddMessage(LoggerStrings.CalculationHasDone);
TraceResult();
}
catch (Exception ex)
{
@@ -87,6 +90,31 @@ namespace StructureHelperLogics.NdmCalculations.Cracking
}
}
private void TraceResult()
{
TraceLogger?.AddMessage(LoggerStrings.CalculationHasDone);
ITraceEntityLogic traceLogic = new TraceCrackResultLogic()
{
Collection = result.TupleResults
};
traceLogic.AddEntriesToTraceLogger(TraceLogger);
}
private void TraceInputData()
{
TraceLogger?.AddMessage(LoggerStrings.LogicType(this), TraceLogStatuses.Service);
ITraceEntityLogic traceLogic = new TracePrimitiveFactory()
{
Collection = InputData.Primitives
};
traceLogic.AddEntriesToTraceLogger(TraceLogger);
traceLogic = new TraceMaterialsFactory()
{
Collection = InputData.Primitives.Select(x => x.NdmElement.HeadMaterial).Distinct()
};
traceLogic.AddEntriesToTraceLogger(TraceLogger);
}
private void CheckInputData()
{
checkInputDataLogic.InputData = InputData;