/// <summary> /// Calculates the voltage between 2 markers. /// </summary> /// <returns>The D.</returns> /// <param name="vpd">Vpd.</param> /// <param name="marker1">Marker1.</param> /// <param name="marker2">Marker2.</param> /// <param name="frame">Frame.</param> public static double CalculateDV(VoltsPerDivision vpd, AttenuationFactor attenuationFactor, Marker marker1, Marker marker2, Grid frame) { var pixelsPerDiv = frame.Height / 10; var distance = Math.Abs(marker1.Value - marker2.Value); var divs = distance / pixelsPerDiv; var result = divs * VoltsPerDivisionConverter.ToVolts(vpd, attenuationFactor); return(result); }
public static double ToVolts(VoltsPerDivision voltsPerDivision, AttenuationFactor attenuationFactor) { var volts = voltsPerDivisionValues [(int)voltsPerDivision]; if (attenuationFactor == AttenuationFactor.X10) { volts *= 10; } return(volts); }
public static string ToString(VoltsPerDivision voltsPerDivision, AttenuationFactor attenuationFactor) { double volts = VoltsPerDivisionConverter.ToVolts(voltsPerDivision, attenuationFactor); string caption; if (volts.Equals(0)) { caption = "Off"; // TODO: localize } else { caption = String.Format("{0}/div", VoltageConverter.ToString(volts, 0)); } return(caption); }