UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UnitConversion.h File Reference
#include "Containers/Array.h"
#include "Containers/UnrealString.h"
#include "CoreTypes.h"
#include "Delegates/Delegate.h"
#include "Internationalization/Text.h"
#include "Misc/Optional.h"
#include "Templates/ValueOrError.h"
#include "Math/UnitConversion.inl"

Go to the source code of this file.

Classes

class  FUnitSettings
 
struct  FUnitConversion
 
struct  FNumericUnit< NumericType >
 

Enumerations

enum class  EUnit : uint8 {
  Micrometers , Millimeters , Centimeters , Meters ,
  Kilometers , Inches , Feet , Yards ,
  Miles , Lightyears , Degrees , Radians ,
  CentimetersPerSecond , MetersPerSecond , KilometersPerHour , MilesPerHour ,
  DegreesPerSecond , RadiansPerSecond , CentimetersPerSecondSquared , MetersPerSecondSquared ,
  Celsius , Farenheit , Kelvin , Micrograms ,
  Milligrams , Grams , Kilograms , MetricTons ,
  Ounces , Pounds , Stones , GramsPerCubicCentimeter ,
  GramsPerCubicMeter , KilogramsPerCubicCentimeter , KilogramsPerCubicMeter , Newtons ,
  PoundsForce , KilogramsForce , KilogramCentimetersPerSecondSquared , NewtonMeters ,
  KilogramCentimetersSquaredPerSecondSquared , NewtonSeconds , KilogramCentimeters , KilogramMeters ,
  Hertz , Kilohertz , Megahertz , Gigahertz ,
  RevolutionsPerMinute , Bytes , Kilobytes , Megabytes ,
  Gigabytes , Terabytes , Lumens , Candela ,
  Lux , CandelaPerMeter2 , Nit , ExposureValue ,
  Nanoseconds , Microseconds , Milliseconds , Seconds ,
  Minutes , Hours , Days , Months ,
  Years , PixelsPerInch , Percentage , Multiplier ,
  Pascals , KiloPascals , MegaPascals , GigaPascals ,
  Unspecified
}
 
enum class  EUnitType {
  Distance , Angle , Speed , AngularSpeed ,
  Acceleration , Temperature , Mass , Density ,
  Force , Torque , Impulse , PositionalImpulse ,
  Frequency , DataSize , LuminousFlux , LuminousIntensity ,
  Illuminance , Luminance , Time , PixelDensity ,
  Multipliers , ExposureValue , Stress , NumberOf
}
 

Functions

template<typename CharType , typename T >
TStringBuilderBase< CharType > & operator<< (TStringBuilderBase< CharType > &Builder, const FNumericUnit< T > &NumericUnit)
 
template<typename T >
FString LexToString (const FNumericUnit< T > &NumericUnit)
 
template<typename T >
FString LexToSanitizedString (const FNumericUnit< T > &NumericUnit)
 
template<typename T >
void LexFromString (FNumericUnit< T > &OutValue, const TCHAR *String)
 
template<typename T >
bool LexTryParseString (FNumericUnit< T > &OutValue, const TCHAR *String)
 

Enumeration Type Documentation

◆ EUnit

enum class EUnit : uint8
strong

Enum must be zero-indexed and sequential. Must be grouped by relevance and ordered by magnitude. Enum must match the mirrored enum that exists in CoreUObject/NoExportTypes.h for the purposes of UObject reflection

Enumerator
Micrometers 

Scalar distance/length unit.

Millimeters 
Centimeters 
Meters 
Kilometers 
Inches 
Feet 
Yards 
Miles 
Lightyears 
Degrees 

Angular unit.

Radians 
CentimetersPerSecond 

Speed unit.

MetersPerSecond 
KilometersPerHour 
MilesPerHour 
DegreesPerSecond 

Angular speed unit.

RadiansPerSecond 
CentimetersPerSecondSquared 

Acceleration unit.

MetersPerSecondSquared 
Celsius 

Temperature unit.

Farenheit 
Kelvin 
Micrograms 

Mass unit.

Milligrams 
Grams 
Kilograms 
MetricTons 
Ounces 
Pounds 
Stones 
GramsPerCubicCentimeter 

Density unit.

GramsPerCubicMeter 
KilogramsPerCubicCentimeter 
KilogramsPerCubicMeter 
Newtons 

Force unit.

PoundsForce 
KilogramsForce 
KilogramCentimetersPerSecondSquared 
NewtonMeters 

Torque unit.

KilogramCentimetersSquaredPerSecondSquared 
NewtonSeconds 

Impulse unit.

KilogramCentimeters 
KilogramMeters 
Hertz 

Frequency unit.

Kilohertz 
Megahertz 
Gigahertz 
RevolutionsPerMinute 
Bytes 

Data Size unit.

Kilobytes 
Megabytes 
Gigabytes 
Terabytes 
Lumens 

Luminous flux unit.

Candela 

Luminous intensity unit.

Lux 

Illuminance unit.

CandelaPerMeter2 

Luminance unit.

Nit 
ExposureValue 

Exposure value unit.

Nanoseconds 

Time unit.

Microseconds 
Milliseconds 
Seconds 
Minutes 
Hours 
Days 
Months 
Years 
PixelsPerInch 

Pixel density unit.

Percentage 

Percentage.

Multiplier 

Arbitrary multiplier.

Pascals 

Stress unit.

KiloPascals 
MegaPascals 
GigaPascals 
Unspecified 

Symbolic entry, not specifiable on meta data.

◆ EUnitType

enum class EUnitType
strong

Enumeration that specifies particular classes of unit

Enumerator
Distance 
Angle 
Speed 
AngularSpeed 
Acceleration 
Temperature 
Mass 
Density 
Force 
Torque 
Impulse 
PositionalImpulse 
Frequency 
DataSize 
LuminousFlux 
LuminousIntensity 
Illuminance 
Luminance 
Time 
PixelDensity 
Multipliers 
ExposureValue 
Stress 
NumberOf 

Function Documentation

◆ LexFromString()

template<typename T >
void LexFromString ( FNumericUnit< T > &  OutValue,
const TCHAR String 
)

◆ LexToSanitizedString()

template<typename T >
FString LexToSanitizedString ( const FNumericUnit< T > &  NumericUnit)

◆ LexToString()

template<typename T >
FString LexToString ( const FNumericUnit< T > &  NumericUnit)

◆ LexTryParseString()

template<typename T >
bool LexTryParseString ( FNumericUnit< T > &  OutValue,
const TCHAR String 
)

◆ operator<<()

template<typename CharType , typename T >
TStringBuilderBase< CharType > & operator<< ( TStringBuilderBase< CharType > &  Builder,
const FNumericUnit< T > &  NumericUnit 
)