From b70b02ee429d323a83c2e90e189a753bcabe0bf5 Mon Sep 17 00:00:00 2001 From: Jacques Lucke Date: Thu, 29 Sep 2022 13:32:03 +0200 Subject: Fix: Spline Parameter node produces NaN when curve is a single point Issue found in file from T101256. --- .../blender/nodes/geometry/nodes/node_geo_curve_spline_parameter.cc | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'source') diff --git a/source/blender/nodes/geometry/nodes/node_geo_curve_spline_parameter.cc b/source/blender/nodes/geometry/nodes/node_geo_curve_spline_parameter.cc index 6fe806adb7c..00d3129a63d 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_curve_spline_parameter.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_curve_spline_parameter.cc @@ -126,6 +126,10 @@ static VArray construct_curve_parameter_varray(const bke::CurvesGeometry value *= factor; } } + else if (curve_lengths.size() == 1) { + /* The curve is a single point. */ + curve_lengths[0] = 0.0f; + } else { /* It is arbitrary what to do in those rare cases when all the points are * in the same position. In this case we are just arbitrarily giving a valid -- cgit v1.2.3