Skip to content

Commit e5bab8c

Browse files
EMS90EMS90
EMS90
authored and
EMS90
committed
Added removing of unneeded scale (this only occurs on reverse transforms) when the scale (should) be 1 again.
1 parent 2312e69 commit e5bab8c

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

TRA.Tool/TransformPanelBase.cs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,17 @@ private void TrassenTransform(TRATrasse trasse, TransformSetup transformSetup)
150150
}
151151
}
152152
trasse.Elemente = trasse.Elemente.Where(x => !(x.GetGeometryType() == typeof(KSprung) && x.L == 0)).ToArray(); //Remove KSprung elements of length 0
153+
//Try Removing unnecessary Scale.This can happen if previous scale was saved applied for saving, and inverted Transform was applied.
154+
foreach (TrassenElementExt element in trasse.Elemente)
155+
{
156+
if (element.Successor != null)
157+
{
158+
if (Math.Abs(element.S + element.L * element.Scale - element.Successor.S) < Trassierung.StationMismatchTolerance)
159+
{
160+
element.ApplyScale(); //Apply Scale
161+
}
162+
}
163+
}
153164
}
154165
internal virtual TransformSetup GetTransformSetup() { return new TransformSetup(); }
155166

0 commit comments

Comments
 (0)