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 ");

View File

@@ -11,6 +11,7 @@ namespace StructureHelperCommon.Models.Materials.Libraries
{
public void Update(IMaterialPartialFactor targetObject, IMaterialPartialFactor sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
targetObject.LimitState = sourceObject.LimitState;
targetObject.StressState = sourceObject.StressState;
targetObject.CalcTerm = sourceObject.CalcTerm;

View File

@@ -11,6 +11,7 @@ namespace StructureHelperCommon.Models.Materials.Libraries
{
public void Update(IMaterialSafetyFactor targetObject, IMaterialSafetyFactor sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
targetObject.Name = sourceObject.Name;
targetObject.Take = sourceObject.Take;
targetObject.Description = sourceObject.Description;

View File

@@ -11,6 +11,7 @@ namespace StructureHelperCommon.Models.Sections
{
public void Update(ICompressedMember targetObject, ICompressedMember sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
targetObject.Buckling = sourceObject.Buckling;
targetObject.GeometryLength = sourceObject.GeometryLength;
targetObject.LengthFactorX = sourceObject.LengthFactorX;

View File

@@ -11,6 +11,7 @@ namespace StructureHelperCommon.Models.Shapes
{
public void Update(ICircleShape targetObject, ICircleShape sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
targetObject.Diameter = sourceObject.Diameter;
}
}

View File

@@ -13,6 +13,7 @@ namespace StructureHelperCommon.Models.Shapes
readonly PointShapeUpdateStrategy pointUpdateStrategy = new();
public void Update(ILineShape targetObject, ILineShape sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
pointUpdateStrategy.Update(targetObject.StartPoint, sourceObject.StartPoint);
pointUpdateStrategy.Update(targetObject.EndPoint, sourceObject.EndPoint);
}

View File

@@ -13,6 +13,7 @@ namespace StructureHelperCommon.Models.Shapes.Logics
/// <inheritdoc />
public void Update(IPoint2D targetObject, IPoint2D sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
targetObject.X = sourceObject.X;
targetObject.Y = sourceObject.Y;
}

View File

@@ -11,6 +11,7 @@ namespace StructureHelperCommon.Models.Shapes
{
public void Update(IRectangleShape targetObject, IRectangleShape sourceObject)
{
if (ReferenceEquals(targetObject, sourceObject)) { return; }
targetObject.Width = sourceObject.Width;
targetObject.Height = sourceObject.Height;
targetObject.Angle = sourceObject.Angle;