public Perpendicular(Intersection inter) : base(inter.intersect, inter.lhs, inter.rhs) { // Check if truly perpendicular if (lhs.CoordinatePerpendicular(rhs) == null) { throw new ArgumentException("Intersection is not perpendicular: " + inter.ToString()); } originalInter = inter; }