Interactin diagram was added

This commit is contained in:
Evgeny Redikultsev
2023-12-02 21:50:10 +05:00
parent 8de8c00182
commit 1b635cbf69
47 changed files with 619 additions and 146 deletions

View File

@@ -11,6 +11,7 @@ using StructureHelperLogics.NdmCalculations.Analyses.ByForces;
using StructureHelperLogics.NdmCalculations.Cracking;
using StructureHelperLogics.NdmCalculations.Primitives;
using StructureHelperLogics.NdmCalculations.Triangulations;
using StructureHelperLogics.Services.NdmPrimitives;
namespace StructureHelperTests.FunctionalTests.Ndms.Calculators.CrackCalculatorTests
@@ -24,8 +25,7 @@ namespace StructureHelperTests.FunctionalTests.Ndms.Calculators.CrackCalculatorT
var template = new RectangleBeamTemplate(width, height) { TopDiameter = topDiametr, BottomDiameter = bottomDiametr, WidthCount = widthCount, HeightCount = heightCount };
var newSection = new SectionTemplate(new RectGeometryLogic(template)).GetCrossSection();
var ndmPrimitives = newSection.SectionRepository.Primitives;
ITriangulationOptions options = new TriangulationOptions { LimiteState = LimitStates.SLS, CalcTerm = CalcTerms.ShortTerm };
var ndms = ndmPrimitives.SelectMany(x => x.GetNdms(options));
var ndms = NdmPrimitivesService.GetNdms(ndmPrimitives, LimitStates.SLS, CalcTerms.ShortTerm);
var calculator = new CrackForceCalculator();
calculator.EndTuple = new ForceTuple() { Mx = -50e3d, My = -50e3d, Nz = 0d };
calculator.NdmCollection = ndms;

View File

@@ -16,6 +16,10 @@ namespace StructureHelperTests.UnitTests.Calcuators
var calculator = new LimitCurveCalculator(new StabLimitCurveLogic())
{
};
calculator.SurroundData.XMax = xmax;
calculator.SurroundData.XMin = -xmax;
calculator.SurroundData.YMax = ymax;
calculator.SurroundData.YMin = -ymax;
//Act
calculator.Run();
var result = calculator.Result;

View File

@@ -17,7 +17,7 @@ namespace StructureHelperTests.UnitTests.Calcuators
parameterLogicMock.Setup(p => p.GetParameter()).Returns(2.0); // Mocking the GetParameter method
var limitCurveLogic = new LimitCurveLogic(parameterLogicMock.Object);
limitCurveLogic.LimitPredicate = point => point.X <= 0.5d; // Example predicate
limitCurveLogic.LimitPredicate = point => point.X >= 0.5d; // Example predicate
var inputPoints = new List<IPoint2D>
{
@@ -51,7 +51,7 @@ namespace StructureHelperTests.UnitTests.Calcuators
parameterLogicMock.Setup(p => p.GetParameter()).Returns(2.0);
var limitCurveLogic = new LimitCurveLogic(parameterLogicMock.Object);
limitCurveLogic.LimitPredicate = point => false; // Invalid predicate
limitCurveLogic.LimitPredicate = point => true; // Invalid predicate
var inputPoints = new List<IPoint2D>
{