File tree Expand file tree Collapse file tree 1 file changed +5
-3
lines changed Expand file tree Collapse file tree 1 file changed +5
-3
lines changed Original file line number Diff line number Diff line change @@ -352,17 +352,19 @@ namespace geode
352352 to_delete[p] = nb_vertices != 3 ;
353353 if ( nb_vertices > 3 )
354354 {
355+ std::vector< index_t > new_polygons;
356+ new_polygons.reserve ( nb_vertices - 2 );
355357 const auto vertices = surface.polygon_vertices ( p );
356358 for ( const auto v : LRange{ 2 , nb_vertices } )
357359 {
358- builder.create_polygon (
359- { vertices[0 ], vertices[v - 1 ], vertices[v] } );
360+ new_polygons. emplace_back ( builder.create_polygon (
361+ { vertices[0 ], vertices[v - 1 ], vertices[v] } ) ) ;
360362 }
363+ builder.compute_polygon_adjacencies ( new_polygons );
361364 }
362365 }
363366 to_delete.resize ( surface.nb_polygons (), false );
364367 builder.delete_polygons ( to_delete );
365- builder.compute_polygon_adjacencies ();
366368 }
367369
368370 std::unique_ptr< SurfaceMesh3D > convert_surface_mesh2d_into_3d (
You can’t perform that action at this time.
0 commit comments