Index: DamEngine/trunk/src/Deltares.DamEngine.Data/Geometry/GeometryLoop.cs =================================================================== diff -u -r5069 -r5073 --- DamEngine/trunk/src/Deltares.DamEngine.Data/Geometry/GeometryLoop.cs (.../GeometryLoop.cs) (revision 5069) +++ DamEngine/trunk/src/Deltares.DamEngine.Data/Geometry/GeometryLoop.cs (.../GeometryLoop.cs) (revision 5073) @@ -249,11 +249,15 @@ /// The cloned GeometryLoop public override GeometryLoop Clone() { + SyncPoints(); GeometryPointString clonedGeometryPointString = base.Clone(); - GeometryLoop clonedGeometryLoop = new GeometryLoop(); + var clonedGeometryLoop = new GeometryLoop(); clonedGeometryLoop.Points.AddRange(clonedGeometryPointString.Points); - clonedGeometryLoop.SyncCalcPoints(); //Always sync the calcPoints after adding points or preferably add the calcPoints to the clonedGeometryPointString and synchronize the points (using SyncPoints) - clonedGeometryLoop.CurveList.AddRange(CurveList); // Wrong: The points in the new curves must be retrieved by location in the new pointlist in order to properly clone the curves + clonedGeometryLoop.SyncCalcPoints(); + foreach (GeometryCurve curve in CurveList) + { + clonedGeometryLoop.CurveList.Add(curve.Clone(clonedGeometryLoop.CalcPoints)); + } return clonedGeometryLoop; } } \ No newline at end of file