Icons were added

This commit is contained in:
Evgeny Redikultsev
2023-08-12 14:53:38 +05:00
parent ce97586d2b
commit 80302525b3
103 changed files with 1133 additions and 449 deletions

View File

@@ -25,13 +25,13 @@ namespace StructureHelperLogics.Services.NdmCalculations
{
var ndmCollection = new List<INdm>();
ITriangulationOptions options = new TriangulationOptions { LimiteState = calculationProperty.LimitState, CalcTerm = calculationProperty.CalcTerm };
ndmCollection.AddRange(Triangulation.GetNdms(ndmPrimitives, options));
ndmCollection.AddRange(ndmPrimitives.SelectMany(x => x.GetNdms(options)));
var loaderData = new LoaderOptions
{
Preconditions = new Preconditions
{
ConditionRate = calculationProperty.IterationProperty.Accuracy,
MaxIterationCount = calculationProperty.IterationProperty.MaxIterationCount,
ConditionRate = calculationProperty.Accuracy.IterationAccuracy,
MaxIterationCount = calculationProperty.Accuracy.MaxIterationCount,
StartForceMatrix = new ForceMatrix { Mx = mx, My = my, Nz = nz }
},
NdmCollection = ndmCollection
@@ -47,7 +47,7 @@ namespace StructureHelperLogics.Services.NdmCalculations
foreach (var forceCombinations in calculationProperty.ForceCombinations)
{
var forceMatrix = forceCombinations.ForceMatrix;
results.Add(GetCalculationResult(forceMatrix, ndms, calculationProperty.IterationProperty.Accuracy, calculationProperty.IterationProperty.MaxIterationCount));
results.Add(GetCalculationResult(forceMatrix, ndms, calculationProperty.Accuracy.IterationAccuracy, calculationProperty.Accuracy.MaxIterationCount));
}
return results;
}

View File

@@ -19,18 +19,11 @@ namespace StructureHelperLogics.Services.NdmPrimitives
{
public static class NdmPrimitivesService
{
public static List<INdm> GetNdms(INdmPrimitive primitive, LimitStates limitState, CalcTerms calcTerm)
{
//Формируем коллекцию элементарных участков для расчета в библитеке (т.е. выполняем триангуляцию)
List<INdm> ndmCollection = new List<INdm>();
var material = primitive.HeadMaterial.GetLoaderMaterial(limitState, calcTerm);
ndmCollection.AddRange(primitive.GetNdms(material));
return ndmCollection;
}
public static List<INdm> GetNdms(IEnumerable<INdmPrimitive> primitives, LimitStates limitState, CalcTerms calcTerm)
{
var orderedNdmPrimitives = primitives.OrderBy(x => x.VisualProperty.ZIndex);
var ndms = new List<INdm>();
var triangulationOptions = new TriangulationOptions() { LimiteState = limitState, CalcTerm = calcTerm };
foreach (var item in orderedNdmPrimitives)
{
if (item is IHasDivisionSize)
@@ -43,7 +36,7 @@ namespace StructureHelperLogics.Services.NdmPrimitives
}
if (item.Triangulate == true)
{
ndms.AddRange(GetNdms(item, limitState, calcTerm));
ndms.AddRange(item.GetNdms(triangulationOptions));
}
}
return ndms;

View File

@@ -94,8 +94,8 @@ namespace StructureHelperLogics.Services.NdmPrimitives
try
{
var gravityCenter = GeometryOperations.GetReducedMomentsOfInertia(locNdms, locStrainMatrix);
firstParameter.Value = (gravityCenter.MomentX * unitMultiPlayer).ToString();
secondParameter.Value = (gravityCenter.MomentY * unitMultiPlayer).ToString();
firstParameter.Value = (gravityCenter.EIx * unitMultiPlayer).ToString();
secondParameter.Value = (gravityCenter.EIy * unitMultiPlayer).ToString();
}
catch (Exception ex)
{
@@ -134,8 +134,8 @@ namespace StructureHelperLogics.Services.NdmPrimitives
try
{
var actualMoments = GeometryOperations.GetSofteningsFactors(locNdms, locStrainMatrix);
firstParameter.Value = actualMoments.MxFactor.ToString();
secondParameter.Value = actualMoments.MyFactor.ToString();
firstParameter.Value = actualMoments.EIxFactor.ToString();
secondParameter.Value = actualMoments.EIy.ToString();
}
catch (Exception ex)
{
@@ -196,7 +196,7 @@ namespace StructureHelperLogics.Services.NdmPrimitives
try
{
var actual = GeometryOperations.GetSofteningsFactors(locNdms, locStrainMatrix);
firstParameter.Value = actual.NzFactor.ToString();
firstParameter.Value = actual.EAFactor.ToString();
}
catch (Exception ex)
{
@@ -238,8 +238,8 @@ namespace StructureHelperLogics.Services.NdmPrimitives
try
{
var gravityCenter = GeometryOperations.GetGravityCenter(locNdms, locStrainMatrix);
firstParameter.Value = (gravityCenter.CenterX * unitMultiPlayer).ToString();
secondParameter.Value = (gravityCenter.CenterY * unitMultiPlayer).ToString();
firstParameter.Value = (gravityCenter.Cx * unitMultiPlayer).ToString();
secondParameter.Value = (gravityCenter.Cy * unitMultiPlayer).ToString();
}
catch (Exception ex)
{