Add cylinders to 3dLogic

This commit is contained in:
Evgeny Redikultsev
2025-12-06 20:30:51 +05:00
parent 7594872a41
commit 70bfd065c4
32 changed files with 459 additions and 184 deletions

View File

@@ -1,4 +1,6 @@
using LoaderCalculator.Data.Ndms;
using LoaderCalculator;
using LoaderCalculator.Data.Matrix;
using LoaderCalculator.Data.Ndms;
using StructureHelperCommon.Infrastructures.Enums;
using StructureHelperCommon.Infrastructures.Exceptions;
using StructureHelperCommon.Models;
@@ -38,11 +40,12 @@ namespace StructureHelperLogics.Services.NdmPrimitives
var material = ndm.Material;
var materialFunc = material.Diagram;
var newMaterialFunc = (double strain) => strain * material.InitModulus;
var existingPrestrain = ndm.PrestrainLogic.GetAll().Sum(x => x.PrestrainValue);
var prestrainLogic = new GetNdmPrestrainLogic();
var existingPrestrain = prestrainLogic.GetPrestrainValueAtCenter(ndm);
var newPrestrain = materialFunc(existingPrestrain) / material.InitModulus;
ndm.Material.Diagram = newMaterialFunc;
ndm.PrestrainLogic.DeleteAll();
ndm.PrestrainLogic.Add(PrestrainTypes.Prestrain, newPrestrain);
ndm.PrestrainLogic.Add(PrestrainTypes.Prestrain, new StrainMatrix() { EpsZ = newPrestrain });
}
return ndms;
}