[Bf-blender-cvs] [c525fcb9a35] refactor-mesh-position-generic: Merge branch 'master' into refactor-mesh-position-generic

Hans Goudey noreply at git.blender.org
Fri Jan 6 16:05:35 CET 2023


Commit: c525fcb9a3533d7fe949ac71bd9c2754217936c6
Author: Hans Goudey
Date:   Fri Jan 6 09:44:49 2023 -0500
Branches: refactor-mesh-position-generic
https://developer.blender.org/rBc525fcb9a3533d7fe949ac71bd9c2754217936c6

Merge branch 'master' into refactor-mesh-position-generic

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



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

diff --cc source/blender/geometry/intern/mesh_to_curve_convert.cc
index e283ee48a3b,8047f1dc312..f96661fecbb
--- a/source/blender/geometry/intern/mesh_to_curve_convert.cc
+++ b/source/blender/geometry/intern/mesh_to_curve_convert.cc
@@@ -209,13 -211,17 +211,16 @@@ static Vector<std::pair<int, int>> get_
    return selected_edges;
  }
  
- bke::CurvesGeometry mesh_to_curve_convert(const Mesh &mesh, const IndexMask selection)
+ bke::CurvesGeometry mesh_to_curve_convert(
+     const Mesh &mesh,
+     const IndexMask selection,
+     const bke::AnonymousAttributePropagationInfo &propagation_info)
  {
    Vector<std::pair<int, int>> selected_edges = get_selected_edges(mesh, selection);
 -  const Span<MVert> verts = mesh.verts();
 -  CurveFromEdgesOutput output = edges_to_curve_point_indices(verts, selected_edges);
 +  CurveFromEdgesOutput output = edges_to_curve_point_indices(mesh.totvert, selected_edges);
  
    return create_curve_from_vert_indices(
-       mesh, output.vert_indices, output.curve_offsets, output.cyclic_curves);
+       mesh, output.vert_indices, output.curve_offsets, output.cyclic_curves, propagation_info);
  }
  
  }  // namespace blender::geometry
diff --cc source/blender/nodes/geometry/nodes/node_geo_dual_mesh.cc
index 18a2e8eb275,b076f0b7261..8e51e8ac2b5
--- a/source/blender/nodes/geometry/nodes/node_geo_dual_mesh.cc
+++ b/source/blender/nodes/geometry/nodes/node_geo_dual_mesh.cc
@@@ -606,9 -609,11 +609,11 @@@ static void dissolve_redundant_verts(co
   *
   * Some special cases are needed for boundaries and non-manifold geometry.
   */
- static Mesh *calc_dual_mesh(const Mesh &src_mesh, const bool keep_boundaries)
+ static Mesh *calc_dual_mesh(const Mesh &src_mesh,
+                             const bool keep_boundaries,
+                             const AnonymousAttributePropagationInfo &propagation_info)
  {
 -  const Span<MVert> src_verts = src_mesh.verts();
 +  const Span<float3> src_positions = src_mesh.vert_positions();
    const Span<MEdge> src_edges = src_mesh.edges();
    const Span<MPoly> src_polys = src_mesh.polys();
    const Span<MLoop> src_loops = src_mesh.loops();
diff --cc source/blender/nodes/geometry/nodes/node_geo_duplicate_elements.cc
index 60a24acf258,cd191fa8498..0dfebb1362c
--- a/source/blender/nodes/geometry/nodes/node_geo_duplicate_elements.cc
+++ b/source/blender/nodes/geometry/nodes/node_geo_duplicate_elements.cc
@@@ -882,12 -901,14 +898,13 @@@ static void duplicate_points_curve(Geom
  static void duplicate_points_mesh(GeometrySet &geometry_set,
                                    const Field<int> &count_field,
                                    const Field<bool> &selection_field,
-                                   const IndexAttributes &attribute_outputs)
+                                   const IndexAttributes &attribute_outputs,
+                                   const AnonymousAttributePropagationInfo &propagation_info)
  {
    const Mesh &mesh = *geometry_set.get_mesh_for_read();
 -  const Span<MVert> src_verts = mesh.verts();
  
    bke::MeshFieldContext field_context{mesh, ATTR_DOMAIN_POINT};
 -  FieldEvaluator evaluator{field_context, src_verts.size()};
 +  FieldEvaluator evaluator{field_context, mesh.totvert};
    evaluator.add(count_field);
    evaluator.set_selection(selection_field);
    evaluator.evaluate();



More information about the Bf-blender-cvs mailing list