diff --git a/libs/canvas/framed_curve.cc b/libs/canvas/framed_curve.cc index 7808f4e226..d5bb23f4e7 100644 --- a/libs/canvas/framed_curve.cc +++ b/libs/canvas/framed_curve.cc @@ -85,8 +85,14 @@ FramedCurve::interpolate () } samples.clear (); - InterpolatedCurve::interpolate (curve_points, points_per_segment, CatmullRomCentripetal, false, samples); - n_samples = samples.size(); + if (_points.size() == 3) { + samples.push_back (curve_points.front()); + samples.push_back (curve_points.back()); + n_samples = 2; + } else { + InterpolatedCurve::interpolate (curve_points, points_per_segment, CatmullRomCentripetal, false, samples); + n_samples = samples.size(); + } } void