抽取方法
This commit is contained in:
@@ -174,6 +174,25 @@ namespace JoyD.Windows.CS.Toprie
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 温度类型枚举
|
||||||
|
/// </summary>
|
||||||
|
public enum TemperatureType
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 最高温度
|
||||||
|
/// </summary>
|
||||||
|
Max = 0,
|
||||||
|
/// <summary>
|
||||||
|
/// 最低温度
|
||||||
|
/// </summary>
|
||||||
|
Min = 1,
|
||||||
|
/// <summary>
|
||||||
|
/// 平均温度
|
||||||
|
/// </summary>
|
||||||
|
Average = 2
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 获取或设置检测区配置
|
/// 获取或设置检测区配置
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -194,6 +213,63 @@ namespace JoyD.Windows.CS.Toprie
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 获取指定测温区的温度值
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="tempType">温度类型:0表示最高温,1表示最低温,2表示平均温</param>
|
||||||
|
/// <param name="zoneIndex">测温区编号,0表示全局温度</param>
|
||||||
|
/// <returns>温度值</returns>
|
||||||
|
public float GetAreaTemp(int tempType, int zoneIndex)
|
||||||
|
{
|
||||||
|
// 检查DeviceManager是否为空或未连接
|
||||||
|
if (_deviceManager == null || _deviceManager.ConnectionStatus != ConnectionStatus.Connected)
|
||||||
|
{
|
||||||
|
return float.NaN;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取当前温度数据
|
||||||
|
TemperatureData temperatureData = _deviceManager.LastTemperature;
|
||||||
|
if (temperatureData == null)
|
||||||
|
{
|
||||||
|
return float.NaN;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 全局温度
|
||||||
|
if (zoneIndex == 0)
|
||||||
|
{
|
||||||
|
switch (tempType)
|
||||||
|
{
|
||||||
|
case 0: // 最高温
|
||||||
|
return temperatureData.MaxTemperature;
|
||||||
|
case 1: // 最低温
|
||||||
|
return temperatureData.MinTemperature;
|
||||||
|
case 2: // 平均温
|
||||||
|
return temperatureData.AverageTemperature;
|
||||||
|
default:
|
||||||
|
return float.NaN;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 特定测温区温度
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (temperatureData.ZoneTemperatures.TryGetValue(zoneIndex, out var zoneTempData))
|
||||||
|
{
|
||||||
|
switch (tempType)
|
||||||
|
{
|
||||||
|
case 0: // 最高温
|
||||||
|
return zoneTempData.MaxTemperature;
|
||||||
|
case 1: // 最低温
|
||||||
|
return zoneTempData.MinTemperature;
|
||||||
|
case 2: // 平均温
|
||||||
|
return zoneTempData.AverageTemperature;
|
||||||
|
default:
|
||||||
|
return float.NaN;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return float.NaN;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 加载测温区配置文件
|
/// 加载测温区配置文件
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
Reference in New Issue
Block a user