using Speckle.Newtonsoft.Json; using Speckle.Sdk.Models; namespace Speckle.Objects.Geometry; /// /// Represents a face on a /// [SpeckleType("Objects.Geometry.BrepFace")] public class BrepFace : Base { [JsonIgnore] public required Brep Brep { get; set; } public required int SurfaceIndex { get; set; } public required List LoopIndices { get; set; } public required int OuterLoopIndex { get; set; } public required bool OrientationReversed { get; set; } [JsonIgnore] public BrepLoop OuterLoop => Brep.Loops[OuterLoopIndex]; [JsonIgnore] public Surface Surface => Brep.Surfaces[SurfaceIndex]; [JsonIgnore] public List Loops => LoopIndices.Select(i => Brep.Loops[i]).ToList(); }