You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nmWTAI-Platform/Include/iAlg/iAlgMath/zxTempConverter.h

59 lines
1.4 KiB
C++

#pragma once
#include "Defines.h"
#include "iAlgMath_global.h"
// 温度转换类
class I_ALGMATH_EXPORT zxTempConverter
{
public:
zxTempConverter();
~zxTempConverter();
private:
// 四种温标枚举
enum Temp_Unit_Type {
TUT_Celsius = 0, //摄氏度℃
TUT_Fahrenheit, //华氏度F
TUT_Kelvin, //开尔文K
TUT_Rankine, //兰式温度R
TUT_Unknown
};
// 任意温标 → 摄氏度
static double otherToCelsius(double t, Temp_Unit_Type tutSrc);
// 摄氏度 → 任意温标
static double celsiusToOther(double t, Temp_Unit_Type tutDest);
// 通用转换函数:任意温标 → 任意温标
static double convert(double t, \
Temp_Unit_Type tutSrc, \
Temp_Unit_Type tutDest);
public:
// 从摄氏度℃转为其它
static double cToF(double c);
static double cToK(double c);
static double cToR(double c);
// 从华氏度F转为其它
static double fToC(double f);
static double fToK(double f);
static double fToR(double f);
// 从开尔文K转为其它
static double kToC(double k);
static double kToF(double k);
static double kToR(double k);
// 从兰式温度R转为其它
static double rToC(double r);
static double rToF(double r);
static double rToK(double r);
};