View primitives was fixed

This commit is contained in:
Evgeny Redikultsev
2022-11-22 21:03:48 +05:00
parent b566373f16
commit f849ee024a
40 changed files with 689 additions and 601 deletions

View File

@@ -0,0 +1,49 @@
using System;
using StructureHelper.Infrastructure.Enums;
using StructureHelper.UnitSystem.Systems;
using StructureHelper.Windows.MainWindow;
using StructureHelperLogics.Models.Primitives;
using StructureHelperLogics.Models.Materials;
using StructureHelperCommon.Models.Shapes;
using StructureHelperLogics.NdmCalculations.Primitives;
namespace StructureHelper.Infrastructure.UI.DataContexts
{
public class PointViewPrimitive : PrimitiveBase, IHasCenter
{
const double lengthUnit = 1000d;
IPointPrimitive primitive;
public double Area
{ get => primitive.Area;
set
{
primitive.Area = value;
OnPropertyChanged(nameof(Area));
OnPropertyChanged(nameof(Diameter));
}
}
public double PrimitiveLeft
{
get => DeltaX - Diameter / 2d * lengthUnit;
}
public double PrimitiveTop
{
get => DeltaY - Diameter / 2d * lengthUnit;
}
public PointViewPrimitive(IPointPrimitive _primitive) : base(_primitive)
{
primitive = _primitive;
}
public double Diameter { get => Math.Sqrt(primitive.Area / Math.PI) * 2; }
public override INdmPrimitive GetNdmPrimitive()
{
return primitive;
}
}
}