Add curvature calculator DTOs

This commit is contained in:
Evgeny Redikultsev
2025-11-23 17:19:36 +05:00
parent 7ab4909c67
commit 5daa32a954
77 changed files with 1415 additions and 165 deletions

View File

@@ -4,6 +4,7 @@ using StructureHelperCommon.Models;
using StructureHelperCommon.Models.Calculators;
using StructureHelperCommon.Models.Loggers;
using StructureHelperLogics.NdmCalculations.Analyses.ByForces;
using StructureHelperLogics.NdmCalculations.Analyses.Curvatures;
using StructureHelperLogics.NdmCalculations.Analyses.ValueDiagrams;
using StructureHelperLogics.NdmCalculations.Cracking;
@@ -65,11 +66,26 @@ namespace DataAccess.DTOs
{
return ProcessValueDiagramCalcualtor(valueDiagramCalculator);
}
if (source is CurvatureCalculator curvatureCalculator)
{
return ProcessCurvatureCalcualtor(curvatureCalculator);
}
string errorString = ErrorStrings.ObjectTypeIsUnknownObj(source);
TraceLogger?.AddMessage(errorString, TraceLogStatuses.Error);
throw new StructureHelperException(errorString);
}
private ICalculator ProcessCurvatureCalcualtor(CurvatureCalculator calculator)
{
var convertStrategy = new CurvatureCalculatorToDTOConvertStrategy()
{
ReferenceDictionary = ReferenceDictionary,
TraceLogger = TraceLogger,
};
var dictionaryConvertStrategy = new DictionaryConvertStrategy<CurvatureCalculatorDTO, ICurvatureCalculator>(this, convertStrategy);
return dictionaryConvertStrategy.Convert(calculator);
}
private ValueDiagramCalculatorDTO ProcessValueDiagramCalcualtor(IValueDiagramCalculator valueDiagramCalculator)
{
var convertStrategy = new ValueDiagramCalculatorToDTOConvertStrategy()
@@ -78,7 +94,7 @@ namespace DataAccess.DTOs
TraceLogger = TraceLogger
};
var dictionaryConvertStrategy = new DictionaryConvertStrategy<ValueDiagramCalculatorDTO, IValueDiagramCalculator>(this, convertStrategy);
return convertStrategy.Convert(valueDiagramCalculator);
return dictionaryConvertStrategy.Convert(valueDiagramCalculator);
}
private CrackCalculatorDTO ProcessCrackCalculator(ICrackCalculator crackCalculator)