ifcopenshell.api.unit.add_si_unit
¶
Module Contents¶
- ifcopenshell.api.unit.add_si_unit.add_si_unit(file: ifcopenshell.file, unit_type: str = 'LENGTHUNIT', prefix: str | None = None) ifcopenshell.entity_instance ¶
Add a new SI unit
The supported types are ABSORBEDDOSEUNIT, AMOUNTOFSUBSTANCEUNIT, AREAUNIT, DOSEEQUIVALENTUNIT, ELECTRICCAPACITANCEUNIT, ELECTRICCHARGEUNIT, ELECTRICCONDUCTANCEUNIT, ELECTRICCURRENTUNIT, ELECTRICRESISTANCEUNIT, ELECTRICVOLTAGEUNIT, ENERGYUNIT, FORCEUNIT, FREQUENCYUNIT, ILLUMINANCEUNIT, INDUCTANCEUNIT, LENGTHUNIT, LUMINOUSFLUXUNIT, LUMINOUSINTENSITYUNIT, MAGNETICFLUXDENSITYUNIT, MAGNETICFLUXUNIT, MASSUNIT, PLANEANGLEUNIT, POWERUNIT, PRESSUREUNIT, RADIOACTIVITYUNIT, SOLIDANGLEUNIT, THERMODYNAMICTEMPERATUREUNIT, TIMEUNIT, VOLUMEUNIT.
Prefixes supported are ATTO, CENTI, DECA, DECI, EXA, FEMTO, GIGA, HECTO, KILO, MEGA, MICRO, MILLI, NANO, PETA, PICO, TERA.
- Parameters:
unit_type (str) – A type of unit chosen from the list above. For example, choosing LENGTHUNIT will give you a metre.
prefix (str,optional) – A prefix chosen from the list above, or None for no prefix.
- Returns:
The newly created IfcSIUnit
- Return type:
ifcopenshell.entity_instance
Example:
# Millimeters and square meters length = ifcopenshell.api.unit.add_si_unit(model, unit_type="LENGTHUNIT", prefix="MILLI") area = ifcopenshell.api.unit.add_si_unit(model, unit_type="AREAUNIT") # Make it our default units, if we are doing a metric building ifcopenshell.api.unit.assign_unit(model, units=[length, area])