Add Safety FactorConverter

This commit is contained in:
Evgeny Redikultsev
2024-10-06 17:53:49 +05:00
parent 58b6e0eb8b
commit 018a989ba6
21 changed files with 387 additions and 86 deletions

View File

@@ -1,5 +1,6 @@
using StructureHelperCommon.Infrastructures.Enums;
using StructureHelperCommon.Infrastructures.Exceptions;
using StructureHelperCommon.Infrastructures.Interfaces;
using System;
namespace StructureHelperCommon.Models.Materials.Libraries
@@ -7,16 +8,18 @@ namespace StructureHelperCommon.Models.Materials.Libraries
public class MaterialPartialFactor : IMaterialPartialFactor
{
private double factorValue;
private IUpdateStrategy<IMaterialPartialFactor> updateStrategy = new MaterialPartialFactorUpdateStrategy();
public Guid Id { get; }
public StressStates StressState { get; set; }
public CalcTerms CalcTerm { get; set; }
public LimitStates LimitState { get; set; }
public StressStates StressState { get; set; } = StressStates.Compression;
public CalcTerms CalcTerm { get; set; } = CalcTerms.LongTerm;
public LimitStates LimitState { get; set; } = LimitStates.ULS;
public double FactorValue
{
get => factorValue;
set
{
if (value < 0 )
if (value < 0)
{
throw new StructureHelperException(ErrorStrings.FactorMustBeGraterThanZero);
}
@@ -28,9 +31,6 @@ namespace StructureHelperCommon.Models.Materials.Libraries
public MaterialPartialFactor(Guid id)
{
Id = id;
StressState = StressStates.Compression;
LimitState = LimitStates.ULS;
CalcTerm = CalcTerms.LongTerm;
FactorValue = 1d;
}
@@ -40,7 +40,6 @@ namespace StructureHelperCommon.Models.Materials.Libraries
public object Clone()
{
var newItem = new MaterialPartialFactor();
var updateStrategy = new MaterialPartialFactorUpdateStrategy();
updateStrategy.Update(newItem, this);
return newItem;
}