50 lines
1.9 KiB
C#
50 lines
1.9 KiB
C#
using Aurora.Api;
|
|
using VisionCommon;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Windows;
|
|
|
|
namespace VisionCommon {
|
|
public class FovCameraViewWindowParam {
|
|
public FovInfo fovInfo { get; set; }
|
|
public eDisplayType displayType { get; set; }
|
|
}
|
|
public class CamViewWindowUtil {
|
|
public static Dictionary<eFovUiPos, bool> _IsFovCamViewWindowActivateds = new Dictionary<eFovUiPos, bool>();
|
|
|
|
public static void SetFovCamViewWindowActivated(FovInfo fovInfo, eDisplayType displayType, bool isActivated) {
|
|
var fovRecipe = VisionRecipeManager.GetFovRecipe(fovInfo);
|
|
var fovUiPos = VisionRecipeManager.GetFovUiPos(fovRecipe, displayType);
|
|
|
|
if (!_IsFovCamViewWindowActivateds.ContainsKey(fovUiPos)) {
|
|
_IsFovCamViewWindowActivateds.Add(fovUiPos, isActivated);
|
|
}
|
|
else {
|
|
_IsFovCamViewWindowActivateds[fovUiPos] = isActivated;
|
|
}
|
|
}
|
|
|
|
public static bool IsFovCamViewWindowActivated(FovInfo fovInfo, eDisplayType displayType) {
|
|
var fovRecipe = VisionRecipeManager.GetFovRecipe(fovInfo);
|
|
var fovUiPos = VisionRecipeManager.GetFovUiPos(fovRecipe, displayType);
|
|
|
|
if (_IsFovCamViewWindowActivateds.ContainsKey(fovUiPos)) {
|
|
return _IsFovCamViewWindowActivateds[fovUiPos];
|
|
}
|
|
else {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public static string GetFovCamViewWindowTitle(FovInfo fovInfo, eDisplayType displayType) {
|
|
var fovRecipe = VisionRecipeManager.GetFovRecipe(fovInfo);
|
|
var fovUiPos = VisionRecipeManager.GetFovUiPos(fovRecipe, displayType);
|
|
|
|
if (IsFovCamViewWindowActivated(fovInfo, displayType)) {
|
|
return VisionKeys.Title_FovCameraViewWindow + " " + $"[{fovUiPos}]";
|
|
}
|
|
return VisionKeys.Title_FovCameraViewWindow;
|
|
}
|
|
}
|
|
} |