private int SearchIntersection(IVector <T> point) { if (point.Count != (Points.FirstOrDefault()?.Count ?? 0)) { throw new Exception("Point has different dimension than pieces"); } if (point.LessThan(Points[0])) { return(-1); } if (point.MoreOrEqualThan(Points[^ 1]))