internal double getScaleSI(IfcUnitEnum unitType)
{
List<IfcUnit> units = Units;
foreach (IfcUnit u in units)
{
IfcNamedUnit nu = u as IfcNamedUnit;
if (nu != null && nu.UnitType == unitType)
{
IfcSIUnit si = nu as IfcSIUnit;
if (si != null)
return si.getSIFactor();
IfcConversionBasedUnit cbu = nu as IfcConversionBasedUnit;
if (cbu != null)
{
return cbu.getSIFactor();
}
}
}
return 1;
}