Material Update Strategy was added

This commit is contained in:
Evgeny Redikultsev
2023-07-02 22:03:30 +05:00
parent 2595d7e733
commit 03b882f54d
74 changed files with 456 additions and 184 deletions

View File

@@ -1,13 +1,13 @@
using StructureHelperCommon.Infrastructures.Enums;
using StructureHelperCommon.Infrastructures.Exceptions;
using StructureHelperCommon.Infrastructures.Strings;
using System;
namespace StructureHelperCommon.Models.Materials.Libraries
{
public class MaterialPartialFactor : IMaterialPartialFactor
{
private double factorValue;
public Guid Id { get; }
public StressStates StressState { get; set; }
public CalcTerms CalcTerm { get; set; }
public LimitStates LimitState { get; set; }
@@ -24,23 +24,24 @@ namespace StructureHelperCommon.Models.Materials.Libraries
}
}
public MaterialPartialFactor()
public MaterialPartialFactor(Guid id)
{
Id = id;
StressState = StressStates.Compression;
LimitState = LimitStates.ULS;
CalcTerm = CalcTerms.LongTerm;
FactorValue = 1d;
}
public MaterialPartialFactor() : this (Guid.NewGuid())
{ }
public object Clone()
{
var newItem = new MaterialPartialFactor()
{
StressState = StressState,
CalcTerm = CalcTerm,
LimitState = LimitState,
FactorValue = FactorValue,
};
var newItem = new MaterialPartialFactor();
var updateStrategy = new MaterialPartialFactorUpdateStrategy();
updateStrategy.Update(newItem, this);
return newItem;
}
}