Update strategy were changed

This commit is contained in:
Evgeny Redikultsev
2023-07-23 21:10:33 +05:00
parent 44ca05d181
commit ac079eb612
29 changed files with 39 additions and 11 deletions

View File

@@ -14,6 +14,8 @@ namespace StructureHelperCommon.Models.Forces
readonly IUpdateStrategy<IForceAction> forceUpdateStrategy = new ForceActionUpdateStrategy();
public void Update(IAction targetObject, IAction sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
CheckObject.CompareTypes(targetObject, sourceObject);
targetObject.Name = sourceObject.Name;
if (targetObject is IForceAction forceAction)

View File

@@ -13,6 +13,7 @@ namespace StructureHelperCommon.Models.Forces
readonly IUpdateStrategy<IForceTuple> tupleUpdateStrategy = new ForceTupleUpdateStrategy();
public void Update(IForceCombinationByFactor targetObject, IForceCombinationByFactor sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
CheckObject.CompareTypes(targetObject, sourceObject);
tupleUpdateStrategy.Update(targetObject.FullSLSForces, sourceObject.FullSLSForces);
targetObject.ULSFactor = sourceObject.ULSFactor;

View File

@@ -19,6 +19,7 @@ namespace StructureHelperCommon.Models.Forces
private readonly IUpdateStrategy<IForceCombinationList> forceListUpdateStrategy = new ForceCombinationListUpdateStrategy();
public void Update(IForceAction targetObject, IForceAction sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
CheckObject.CompareTypes(targetObject, sourceObject);
targetObject.SetInGravityCenter = sourceObject.SetInGravityCenter;
pointStrategy.Update(targetObject.ForcePoint, sourceObject.ForcePoint);

View File

@@ -12,10 +12,10 @@ namespace StructureHelperCommon.Models.Forces
{
public void Update(IForceCombinationList targetObject, IForceCombinationList sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
CheckObject.CompareTypes(targetObject, sourceObject);
var forcesList = new List<IDesignForceTuple>(sourceObject.DesignForces);
targetObject.DesignForces.Clear();
foreach (var item in forcesList)
foreach (var item in sourceObject.DesignForces)
{
targetObject.DesignForces.Add((IDesignForceTuple)item.Clone());
}

View File

@@ -15,6 +15,7 @@ namespace StructureHelperCommon.Models.Forces
private readonly IUpdateStrategy<IForceTuple> tupleUpdateStrategy = new ForceTupleUpdateStrategy();
public void Update(IDesignForcePair targetObject, IDesignForcePair sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
CheckObject.CompareTypes(targetObject, sourceObject);
targetObject.LimitState = sourceObject.LimitState;
tupleUpdateStrategy.Update(targetObject.LongForceTuple, sourceObject.LongForceTuple);

View File

@@ -13,6 +13,7 @@ namespace StructureHelperCommon.Models.Forces
{
public void Update(IForceTuple targetObject, IForceTuple sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
CheckObject.IsNull(targetObject, ": target object ");
CheckObject.IsNull(sourceObject, ": source object ");