Fix beam shear force calculator

This commit is contained in:
Evgeny Redikultsev
2025-05-24 20:26:44 +05:00
parent d108c52cac
commit f127594b5c
53 changed files with 920 additions and 121 deletions

View File

@@ -11,6 +11,7 @@ namespace StructureHelperCommon.Models.Forces.BeamShearActions
CheckObject.IsNull(targetObject);
CheckObject.IsNull(sourceObject);
if (ReferenceEquals(targetObject, sourceObject)) { return; }
targetObject.Name = sourceObject.Name;
InitializeStrategies();
CheckObject.IsNull(sourceObject.SupportAction);
CheckObject.IsNull(targetObject.SupportAction);

View File

@@ -7,7 +7,7 @@ using System.Threading.Tasks;
namespace StructureHelperCommon.Models.Materials.Libraries
{
public interface IFactorLogic
public interface IMaterialFactorLogic
{
List<IMaterialSafetyFactor> SafetyFactors { get; }
(double Compressive, double Tensile) GetTotalFactor(LimitStates limitState, CalcTerms calcTerm);

View File

@@ -7,7 +7,7 @@ using System.Threading.Tasks;
namespace StructureHelperCommon.Models.Materials.Libraries
{
public class FactorLogic : IFactorLogic
public class MaterialFactorLogic : IMaterialFactorLogic
{
public List<IMaterialSafetyFactor> SafetyFactors { get; }
public (double Compressive, double Tensile) GetTotalFactor(LimitStates limitState, CalcTerms calcTerm)
@@ -21,7 +21,7 @@ namespace StructureHelperCommon.Models.Materials.Libraries
}
return (compressionVal, tensionVal);
}
public FactorLogic(List<IMaterialSafetyFactor> safetyFactors)
public MaterialFactorLogic(List<IMaterialSafetyFactor> safetyFactors)
{
SafetyFactors = safetyFactors;
}

View File

@@ -10,7 +10,7 @@ namespace StructureHelperCommon.Models.Materials
public class MaterialCommonOptionLogic : IMaterialOptionLogic
{
private IMaterialLogicOptions options;
private FactorLogic factorLogic;
private MaterialFactorLogic factorLogic;
public MaterialCommonOptionLogic(IMaterialLogicOptions options)
{
@@ -29,7 +29,7 @@ namespace StructureHelperCommon.Models.Materials
private void ProcessExternalFactors(IMaterialOptions materialOptions)
{
factorLogic = new FactorLogic(options.SafetyFactors);
factorLogic = new MaterialFactorLogic(options.SafetyFactors);
var strength = factorLogic.GetTotalFactor(options.LimitState, options.CalcTerm);
materialOptions.ExternalFactor.Compressive = strength.Compressive;
materialOptions.ExternalFactor.Tensile = strength.Tensile;