From 160dde12cf15b7c83c668da8045d370d07af7598 Mon Sep 17 00:00:00 2001 From: spherallic <spherallic@gmail.com> Date: Wed, 29 May 2024 13:35:41 +0200 Subject: [PATCH] Filter old lines and vertices by edited area when drawing geometry lines --- Source/Core/Geometry/Tools.cs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Source/Core/Geometry/Tools.cs b/Source/Core/Geometry/Tools.cs index c4b24f967..fe7ec6cfd 100755 --- a/Source/Core/Geometry/Tools.cs +++ b/Source/Core/Geometry/Tools.cs @@ -1093,7 +1093,14 @@ namespace CodeImp.DoomBuilder.Geometry map.BeginAddRemove(); MapSet.JoinVertices(mergeverts, MapSet.STITCH_DISTANCE); //mxd map.EndAddRemove(); - + + // Filter old lines and vertices by edited area + RectangleF editarea = MapSet.CreateArea(newlines); + editarea = MapSet.IncreaseArea(editarea, mergeverts); + editarea.Inflate(1.0f, 1.0f); + oldlines = new List<Linedef>(MapSet.FilterByArea(oldlines, ref editarea)); + nonmergeverts = new List<Vertex>(MapSet.FilterByArea(nonmergeverts, ref editarea)); + /***************************************************\ Find a way to close the drawing \***************************************************/ -- GitLab