If IsClosed, just return true. Otherwise, decide if curve can be closed as follows: Linear curves polylinear curves with 2 segments, Nurbs with 3 or less control points cannot be made closed. Also, if tolerance > 0 and the gap between
start and end is larger than tolerance, curve cannot be made closed. Adjust the curve’s endpoint to match its start point.
So, if tolerance is greater than 0 works how you say, but I thought if tolerance is equals to 0, always try to close the curve.