public static DateTime GetDateTimeFromChartResult(bool xIsTime, bool isOffset, TrailResult tr, TrailResult ReferenceTrailResult, float t) { DateTime dateTime; float xOffset = tr.GetXOffset(xIsTime, ReferenceTrailResult); if (!xIsTime) { xOffset = (float)TrackUtil.DistanceConvertFrom(xOffset, ReferenceTrailResult); } t -= xOffset; if (isOffset) { float nextElapsed; t -= GetChartResultsResyncOffset(xIsTime, tr, ReferenceTrailResult, t, out nextElapsed); } if (xIsTime) { dateTime = tr.GetDateTimeFromTimeResult(t); } else { dateTime = tr.GetDateTimeFromDistResult(TrackUtil.DistanceConvertTo(t, ReferenceTrailResult)); } return(dateTime); }
/*******************************************************/ private static float GetTimeChartResultFromDateTime(bool isOffset, TrailResult tr, TrailResult ReferenceTrailResult, DateTime d1) { float x1 = (float)(tr.GetTimeResult(d1)); if (isOffset) { float nextElapsed; x1 += GetChartResultsResyncOffset(true, tr, ReferenceTrailResult, x1, out nextElapsed); } x1 += tr.GetXOffset(true, ReferenceTrailResult); return(x1); }
private static float GetDistChartResultFromDistResult(bool isOffset, TrailResult tr, TrailResult ReferenceTrailResult, double t1) { //distance is for result, then to display units float x1 = (float)t1; if (isOffset) { float nextElapsed; x1 += GetChartResultsResyncOffset(false, tr, ReferenceTrailResult, x1, out nextElapsed); } x1 += tr.GetXOffset(false, ReferenceTrailResult); x1 = (float)TrackUtil.DistanceConvertFrom(x1, ReferenceTrailResult); return(x1); }