public IMesh CleanCopy() { IMesh copy = new IMesh(); Elements.ForEach(entry => { IElement e = entry.CleanCopy(); copy.AddElement(e); }); Vertices.ForEach(entry => { ITopologicVertex v = entry.CleanCopy(); copy.AddVertex(v.Key, v); }); copy._renderMesh = _renderMesh; copy.elementKey = elementKey; copy._valid = _valid; return(copy); }
public IMesh DeepCopy() { IMesh copy = new IMesh(); Elements.ForEach(entry => { IElement e = (IElement)entry.Clone(); copy.AddElement(e); }); Vertices.ForEach(entry => { ITopologicVertex v = (ITopologicVertex)entry.Clone(); copy.AddVertex(v.Key, v); }); copy._renderMesh = _renderMesh; copy._tempVertexToHalfFacets = _tempVertexToHalfFacets.ToDictionary(entry => entry.Key, entry => entry.Value); copy.message = message; copy.elementKey = elementKey; copy._valid = _valid; return(copy); }