[Bf-blender-cvs] [14b26fc9765] blender-v2.93-release: Fix T87702: Cannot generate one point with line node in end points mode

Hans Goudey noreply at git.blender.org
Tue Apr 27 00:02:04 CEST 2021


Commit: 14b26fc976590c6daa752d4327270540b757b652
Author: Hans Goudey
Date:   Mon Apr 26 17:01:56 2021 -0500
Branches: blender-v2.93-release
https://developer.blender.org/rB14b26fc976590c6daa752d4327270540b757b652

Fix T87702: Cannot generate one point with line node in end points mode

Counts of less than one weren't allowed in end points mode mostly to
avoid a division by zero when calculating the delta. It's trivial to
allow a count of one, so this commit does that, with the point placed
at the start location.

===================================================================

M	source/blender/nodes/geometry/nodes/node_geo_mesh_primitive_line.cc

===================================================================

diff --git a/source/blender/nodes/geometry/nodes/node_geo_mesh_primitive_line.cc b/source/blender/nodes/geometry/nodes/node_geo_mesh_primitive_line.cc
index 1634569f9e9..2eeb87695a8 100644
--- a/source/blender/nodes/geometry/nodes/node_geo_mesh_primitive_line.cc
+++ b/source/blender/nodes/geometry/nodes/node_geo_mesh_primitive_line.cc
@@ -151,7 +151,10 @@ static void geo_node_mesh_primitive_line_exec(GeoNodeExecParams params)
     }
     else if (count_mode == GEO_NODE_MESH_LINE_COUNT_TOTAL) {
       const int count = params.extract_input<int>("Count");
-      if (count > 1) {
+      if (count == 1) {
+        mesh = create_line_mesh(start, float3(0), count);
+      }
+      else {
         const float3 delta = total_delta / (float)(count - 1);
         mesh = create_line_mesh(start, delta, count);
       }



More information about the Bf-blender-cvs mailing list