using StructureHelperLogics.Models.Materials; using StructureHelperCommon.Models.Shapes; using StructureHelper.Models.Materials; using System.Collections; using LoaderCalculator.Data.Ndms; using LoaderCalculator.Data.Materials; using System.Collections.Generic; using StructureHelperCommon.Infrastructures.Interfaces; using System; using StructureHelperCommon.Models.Forces; using StructureHelperLogics.Models.CrossSections; using StructureHelperLogics.NdmCalculations.Triangulations; using StructureHelperCommon.Models.Parameters; namespace StructureHelperLogics.NdmCalculations.Primitives { /// /// Geometrical primitive which generates ndm elemtntary part /// public interface INdmPrimitive : ISaveable, IHasCenter2D, ICloneable { /// /// Name of primitive /// string? Name { get; set; } IShape Shape { get; } /// /// Base properties of primitive /// INdmElement NdmElement { get;} /// /// Host cross-section for primitive /// ICrossSection? CrossSection { get; set; } /// /// Visual settings /// IVisualProperty VisualProperty {get; } IEnumerable GetNdms(ITriangulationOptions triangulationOptions); List GetValuePoints(); } }