Skip to content
Snippets Groups Projects
Commit a594c371 authored by Dmitri Naumov's avatar Dmitri Naumov
Browse files

[MeL] Remove unused searchByElementIDs variant.

parent 8e2ffac6
No related branches found
No related tags found
No related merge requests found
...@@ -63,7 +63,7 @@ MeshLib::Mesh* removeElements(const MeshLib::Mesh& mesh, const std::vector<std:: ...@@ -63,7 +63,7 @@ MeshLib::Mesh* removeElements(const MeshLib::Mesh& mesh, const std::vector<std::
// delete unused nodes // delete unused nodes
NodeSearch ns(mesh); NodeSearch ns(mesh);
ns.searchByElementIDs(removed_element_ids, true); ns.searchByElementIDs(removed_element_ids);
auto &removed_node_ids(ns.getSearchedNodeIDs()); auto &removed_node_ids(ns.getSearchedNodeIDs());
INFO("Removing total %d nodes...", removed_node_ids.size()); INFO("Removing total %d nodes...", removed_node_ids.size());
for (auto nodeid : removed_node_ids) for (auto nodeid : removed_node_ids)
......
...@@ -47,25 +47,6 @@ std::vector<std::size_t> NodeSearch::searchByElementIDsMatchAllConnectedElements ...@@ -47,25 +47,6 @@ std::vector<std::size_t> NodeSearch::searchByElementIDsMatchAllConnectedElements
return connected_nodes; return connected_nodes;
} }
std::vector<std::size_t> NodeSearch::searchByElementIDsNotMatchAllConnectedElements(const std::vector<std::size_t> &elements)
{
std::vector<std::size_t> connected_nodes;
for(std::size_t eid : elements)
{
auto* e = _mesh.getElement(eid);
for (unsigned i=0; i<e->getNBaseNodes(); i++) {
connected_nodes.push_back(e->getNodeIndex(i));
}
}
std::sort(connected_nodes.begin(), connected_nodes.end());
auto it = std::unique(connected_nodes.begin(), connected_nodes.end());
connected_nodes.resize(std::distance(connected_nodes.begin(),it));
return connected_nodes;
}
std::size_t NodeSearch::searchUnused() std::size_t NodeSearch::searchUnused()
{ {
const size_t nNodes (_mesh.getNNodes()); const size_t nNodes (_mesh.getNNodes());
......
...@@ -29,13 +29,11 @@ public: ...@@ -29,13 +29,11 @@ public:
/// return marked node IDs /// return marked node IDs
const std::vector<std::size_t>& getSearchedNodeIDs() const {return _marked_nodes; } const std::vector<std::size_t>& getSearchedNodeIDs() const {return _marked_nodes; }
/// Marks all nodes connecting to any of the given elements /// Marks all nodes connected to any of the given elements ids.
std::size_t searchByElementIDs(const std::vector<std::size_t> &element_ids, bool only_match_all_connected_elements = false) std::size_t searchByElementIDs(const std::vector<std::size_t> &element_ids)
{ {
std::vector<std::size_t> connected_nodes = std::vector<std::size_t> connected_nodes =
(only_match_all_connected_elements searchByElementIDsMatchAllConnectedElements(element_ids);
? searchByElementIDsMatchAllConnectedElements(element_ids)
: searchByElementIDsNotMatchAllConnectedElements(element_ids));
this->updateUnion(connected_nodes); this->updateUnion(connected_nodes);
return connected_nodes.size(); return connected_nodes.size();
...@@ -46,7 +44,6 @@ public: ...@@ -46,7 +44,6 @@ public:
private: private:
std::vector<std::size_t> searchByElementIDsMatchAllConnectedElements(const std::vector<std::size_t> &element_ids); std::vector<std::size_t> searchByElementIDsMatchAllConnectedElements(const std::vector<std::size_t> &element_ids);
std::vector<std::size_t> searchByElementIDsNotMatchAllConnectedElements(const std::vector<std::size_t> &element_ids);
/// Updates the vector of marked items with values from vec. /// Updates the vector of marked items with values from vec.
void updateUnion(const std::vector<std::size_t> &vec); void updateUnion(const std::vector<std::size_t> &vec);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment