public static void Process(SrtParameters parameters) { Console.Error.WriteLine($"Adjusting for scale={parameters.Scale:r} and offset={parameters.Offset:r}s"); string line; var i = 1; while ((line = parameters.InFile.ReadLine()) != null) { parameters.OutFile.WriteLine(ProcessLine(i++, line, parameters.Scale, parameters.Offset)); } }
public static void MapTimepoint(SrtParameters parameters, SrtTimepoint t1, SrtTimepoint t2) { // Difference between original two timepoints var dist1 = (t2.Origin - t1.Origin).TotalSeconds; // Difference between new two timepoints var dist2 = (t2.Target - t2.Target).TotalSeconds; // Scale needed to adjust parameters.Scale = dist2 / dist1; // Adjust offset and compensate for scale parameters.Offset = (t1.Target - t1.Origin).TotalSeconds / parameters.Scale; }
public static void MapTimepoint(SrtParameters parameters, SrtTimepoint t) { parameters.Offset = (t.Target - t.Origin).TotalSeconds; parameters.Scale = 1; }