26.04.03 가상공장 화면 디자인 반영 • 좌측 도구 창, 상단 UI, 하단 UI • 생산 현황판, 알림 현황판 • 설비 라벨, 요약 팝업, 대시보드, 데이터 보드 • 설정창, 미니맵, AI 시뮬레이션 결과창, 나가기 팝업 가상 공장 화면 디자인 변경에 따른 기능 추가 • 미니맵 드래그 및 위치 조정 기능 추가 • UI 상호 작용(호버링, 선택, 위치 이동, 재설정) • UI 기능 추가(상태 표시, 색상)
51 lines
1.7 KiB
C#
51 lines
1.7 KiB
C#
using AZTECHWB.Core;
|
|
using AZTECHWB.Management;
|
|
using AZTECHWB.UI;
|
|
using UVC.UI.Commands;
|
|
|
|
namespace AZTECHWB.Command
|
|
{
|
|
public class SelectedMachineCommand : ICommand
|
|
{
|
|
private bool isSimulation;
|
|
|
|
Machine machine;
|
|
|
|
public SelectedMachineCommand(Machine machine, bool isSimulation)
|
|
{
|
|
this.machine = machine;
|
|
this.isSimulation = isSimulation;
|
|
}
|
|
|
|
public async void Execute(object? parameter = null)
|
|
{
|
|
if (isSimulation)
|
|
{
|
|
var aiSimulationManager = AZTECHSceneMain.Instance.GetManager<AISimulationManager>();
|
|
var data = await aiSimulationManager.SetSimulationResult(machine);
|
|
|
|
var popupCanvas = AZTECHSceneMain.Instance.GetManager<AZTECHUIManager>().GetCanvas<PopupCanvas>();
|
|
popupCanvas.OpenPanel<AISimulationInfoPanel>(CanvasPanelOpenMode.Single);
|
|
|
|
var InfoPanel = popupCanvas.GetPanel<AISimulationInfoPanel>();
|
|
InfoPanel.SetDataInfo(data);
|
|
}
|
|
else
|
|
{
|
|
var controller = AZTECHAppMain.Instance.cameraController;
|
|
|
|
if (controller.viewMode != ViewMode.PerspectiveView)
|
|
{
|
|
controller.SetViewMode(ViewMode.PerspectiveView);
|
|
}
|
|
|
|
var centerPos = machine.centerPos;
|
|
|
|
controller.currentAzimuth = machine.focusAzimuth;
|
|
controller.currentElevation = machine.focusElevation;
|
|
controller.currentDistance = machine.focusDistance;
|
|
controller.SetTargetPos(centerPos);
|
|
}
|
|
}
|
|
}
|
|
} |