protected static double ConvertFromSquarePixels(double area, Units units, PixelSpacing pixelSpacing)
{
if (!ValidateUnits(units, pixelSpacing))
{
const string msg = "Pixel spacing must be calibrated in order to compute physical units.";
throw new ArgumentException(msg, "units");
}
double factor;
switch (units)
{
case Units.Pixels:
factor = 1;
break;
case Units.Centimeters:
factor = pixelSpacing.Column*pixelSpacing.Row/100;
break;
case Units.Millimeters:
default:
factor = pixelSpacing.Column*pixelSpacing.Row;
break;
}
return area*factor;
}