From 28ce8fa08b22fe1528fdbe6b38bb82573483cadb Mon Sep 17 00:00:00 2001 From: Thomas Fischer <thomas.fischer@ufz.de> Date: Mon, 25 Feb 2019 20:09:18 +0100 Subject: [PATCH] [MeL] Add MaterialIDs from subsurface to sfc mesh. --- MeshLib/MeshSurfaceExtraction.cpp | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/MeshLib/MeshSurfaceExtraction.cpp b/MeshLib/MeshSurfaceExtraction.cpp index e480b4e7373..5feb7b7f686 100644 --- a/MeshLib/MeshSurfaceExtraction.cpp +++ b/MeshLib/MeshSurfaceExtraction.cpp @@ -143,7 +143,8 @@ MeshLib::Mesh* MeshSurfaceExtraction::getMeshSurface( } // transmit the original subsurface element ids as a property - if (!subsfc_element_id_prop_name.empty()) { + if (!subsfc_element_id_prop_name.empty()) + { MeshLib::addPropertyToMesh(*result, subsfc_element_id_prop_name, MeshLib::MeshItemType::Cell, 1, element_ids_map); @@ -156,6 +157,19 @@ MeshLib::Mesh* MeshSurfaceExtraction::getMeshSurface( face_ids_map); } + auto const* subsurface_material_ids(MeshLib::materialIDs(subsfc_mesh)); + if (subsurface_material_ids) + { + std::vector<int> material_ids; + material_ids.reserve(sfc_elements.size()); + for (auto bulk_id : element_ids_map) + { + material_ids.push_back((*subsurface_material_ids)[bulk_id]); + } + MeshLib::addPropertyToMesh(*result, "MaterialIDs", + MeshLib::MeshItemType::Cell, 1, + material_ids); + } return result; } -- GitLab