OGS
DuplicateMeshComponents.h
Go to the documentation of this file.
1
15#pragma once
16
17#include <vector>
18
19namespace MeshLib
20{
21class Node;
22class Element;
23
25std::vector<Node*> copyNodeVector(const std::vector<Node*>& nodes);
26
35std::vector<Element*> copyElementVector(
36 std::vector<Element*> const& elements,
37 std::vector<Node*> const& new_nodes,
38 std::vector<std::size_t> const* const node_id_map = nullptr);
39
42Element* copyElement(Element const* const element,
43 const std::vector<Node*>& nodes,
44 std::vector<std::size_t> const* const id_map = nullptr);
45
47std::vector<Element*> cloneElements(std::vector<Element*> const& elements);
48} // end namespace MeshLib
std::vector< Node * > copyNodeVector(const std::vector< Node * > &nodes)
Creates a deep copy of a Node vector.
Element * copyElement(Element const *const element, const std::vector< Node * > &nodes, std::vector< std::size_t > const *const id_map)
std::vector< Element * > copyElementVector(std::vector< Element * > const &elements, std::vector< Node * > const &new_nodes, std::vector< std::size_t > const *const node_id_map)
std::vector< Element * > cloneElements(std::vector< Element * > const &elements)
Clones a vector of elements using the Element::clone() function.