public List <Bend> GetBendLines() { var bends = new List <Bend>(); var bendNotes = GetBendNotes(); if (ReplaceSharpRadius) { FixSharpBends(); } foreach (var line in DxfDocument.Lines) { if (line.Linetype.Name != "CENTERX2" && line.Layer.Name != "BEND") { continue; } var bend = new Bend { Line = line, Direction = BendDirection.Unknown }; bends.Add(bend); } AssignBendDirections(bends, bendNotes); return(bends.Where(b => b.Radius <= MaxBendRadius).ToList()); }
public bool IsCollinearTo(Bend bend) { if (bend.IsVertical || this.IsVertical) { return(bend.IsVertical && this.IsVertical && bend.YIntercept == this.YIntercept); } if (bend.YIntercept != this.YIntercept) { return(false); } return(bend.Slope == this.Slope); }
public bool IsPerpendicularTo(Bend bend) { return(Line.IsPerpendicularTo(bend.Line)); }
public bool IsParallelTo(Bend bend) { return(Line.IsParallelTo(bend.Line)); }