UnitFactory Class
Definition
Provides a set of static methods for generating different types of unit of measure and the option to define your own with CreateUnit(string, string, string, double, IPrefix, Action<UnitFormatOptions>).
Examples
Create SI units with predefined base values using factory methods. This example demonstrates factory methods for different unit types (meter, watt, byte, and second), each creating a fully-configured unit instance with a base value so you can immediately start formatting and working with the result:
using System;
using Codebelt.Unitify;
namespace Unitify.Samples;
public class UnitFactoryExample
{
public static void Main()
{
// Create a meter unit
var meter = UnitFactory.CreateMeter(100);
Console.WriteLine($"Distance: {meter}");
// Create a watt unit
var watt = UnitFactory.CreateWatt(1500);
Console.WriteLine($"Power: {watt}");
// Create a byte unit for data storage
var byte_unit = UnitFactory.CreateByte(1024);
Console.WriteLine($"Data: {byte_unit}");
// Create a second unit for time
var second = UnitFactory.CreateSecond(3600);
Console.WriteLine($"Time: {second}");
}
}
public static class UnitFactory
- Inheritance
-
UnitFactory
Methods
| Name | Description |
|---|---|
| CreateAmpere(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Electric Current in amperes. |
| CreateBecquerel(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Radioactivity in becquerels. |
| CreateBit(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Data Quantity in bits. |
| CreateBitPerSecond(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Transmission Rate in bits per second. |
| CreateByte(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Data Quantity in bytes. |
| CreateCandela(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Luminous Intensity in candelas. |
| CreateCelsius(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Temperature in degrees Celsius. |
| CreateCoulomb(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Electric Charge in coulombs. |
| CreateFarad(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Electric Capacitance in farads. |
| CreateGram(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Mass in grams. |
| CreateGray(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Absorbed Dose in grays. |
| CreateHenry(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Inductance in henries. |
| CreateHertz(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Frequency in hertz. |
| CreateJoule(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Energy in joules. |
| CreateKatal(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Catalytic Activity in katals. |
| CreateKelvin(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Temperature in kelvin. |
| CreateKilogram(double, Action<UnitFormatOptions>) | Creates a unit of measure for Mass in kilograms. |
| CreateLumen(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Luminous Flux in lumens. |
| CreateLux(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Illuminance in lux. |
| CreateMeter(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Length in meters. |
| CreateMole(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Amount of Substance in moles. |
| CreateNewton(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Force in newtons. |
| CreateOhm(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Electric Resistance in ohms. |
| CreatePascal(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Pressure in pascals. |
| CreateRadian(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Plane Angle in radians. |
| CreateSecond(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Time in seconds. |
| CreateSiemens(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Electric Conductance in siemens. |
| CreateSievert(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Equivalent Dose in sieverts. |
| CreateSteradian(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Solid Angle in steradians. |
| CreateTesla(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Magnetic Flux Density in teslas. |
| CreateUnit(string, string, string, double, IPrefix, Action<UnitFormatOptions>) | Creates a custom unit of measure. |
| CreateVolt(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Electric Potential in volts. |
| CreateWatt(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Power in watts. |
| CreateWeber(double, IPrefix, Action<UnitFormatOptions>) | Creates a unit of measure for Magnetic Flux in webers. |