private static void RelocateLoads(LineElement oldLine, LineElement newLine, float x, Canguro.Model.Model model)
{
AssignedLineLoads loads = (AssignedLineLoads)oldLine.Loads;
foreach (LoadCase lc in model.LoadCases.Values)
{
IList<Canguro.Model.Load.Load> list = loads[lc];
if (list != null)
{
for (int i = 0; i < list.Count; i++)
{
bool relocated = false;
Canguro.Model.Load.Load ll = list[i];
if (ll is ConcentratedSpanLoad)
relocated = RelocateConcentratedLoads(newLine.Loads, lc, x, (ConcentratedSpanLoad)ll);
else if (ll is DistributedSpanLoad)
relocated = RelocateDistributedLoads(newLine.Loads, lc, x, (DistributedSpanLoad)ll);
if (relocated)
loads[lc].RemoveAt(i);
}
}
}
}