using Speckle.Newtonsoft.Json; using Speckle.Sdk.Models; namespace Speckle.Objects.Geometry; /// /// Represents a UV Trim Closed Loop on one of the 's surfaces. /// [SpeckleType("Objects.Geometry.BrepLoop")] public class BrepLoop : Base { [JsonIgnore] public required Brep Brep { get; set; } public required int FaceIndex { get; set; } public required List TrimIndices { get; set; } public required BrepLoopType Type { get; set; } [JsonIgnore] public BrepFace Face => Brep.Faces[FaceIndex]; [JsonIgnore] public List Trims => TrimIndices.Select(i => Brep.Trims[i]).ToList(); }