Quantity types are structs and not classes. Updated the interface section. |
Changed "Base Unit" to "Default Unit" as this is technically just provided defaults. Code-wise, these are also declared as default units. |
||
| Line 8: | Line 8: | ||
|+ List of Quantity types | |+ List of Quantity types | ||
|- | |- | ||
! Quantity Type !! | ! Quantity Type !! Default Unit | ||
|- | |- | ||
| Acceleration || m/s² | | Acceleration || m/s² | ||
| Line 20: | Line 20: | ||
| Mass || gram | | Mass || gram | ||
|- | |- | ||
| Ratio || (no unit) | | Ratio || ''(no unit)'' | ||
|- | |- | ||
| Resistance || ohm | | Resistance || ohm | ||
Revision as of 07:21, 13 September 2024
To work with various quantities, Resonite provides a generic quantity system, which allows converting between various units for a given quantity type. An example of this is converting a Distance quantity value between metric and imperial units. There are various quantity types available, which can be used with all generic quantity nodes and components. Each quantity type has a base unit, which can be used to create a quantity value, which can then be converted between all known units of the given quantity type.
Technical
The quantity system is part of the Elements.Quantity assembly. Every quantity type is a struct that implements either an IQuantity<T> or IQuantitySI<T> interface.
Quantity Types
| Quantity Type | Default Unit |
|---|---|
| Acceleration | m/s² |
| Angle | radian |
| Current | ampere |
| Distance | meter |
| Mass | gram |
| Ratio | (no unit) |
| Resistance | ohm |
| Temperature | Kelvin |
| Time | Second |
| Velocity | m/s |
| Voltage | volt |
Quantity Components
| Component | Description |
|---|---|
| FeedQuantityFieldInterface<Q,T> | A quantity field interface for use with the Data Feed system |
| QuantityTextEditorParser<U,T> | Text editor for parsing and converting a Quantity value from text input |
| QuantityTextEditorParser<U> | Text editor for parsing a Quantity value from text input |
| QuantityTextFormatDriver<U> | Drives a formatted text form a Quantity value |
Quantity ProtoFlux Nodes
| ProtoFlux Node | Description |
|---|---|
| BaseValue<U> | Returns the base value of a quantity |
| FormatQuantity<U> | Formats a quantity string |
| FromBaseValue<U> | Creates a quantity from the quantity type's base value |
| ParseQuantity<U> | Parses a quantity string |
Deprecated
The quantity interface before the type update was referenced as QuantityX.