@page "/control"
@using Pages
@using System.Numerics
@using EGFramework
@implements IEGFramework
@rendermode InteractiveServer
靶机控制
靶机控制
@if (isMoving)
{
}
@code {
private DataActionStatus dataActionStatus = new DataActionStatus { Position = 0, Rotate = 0 };
private bool isMoving = false;
private bool isTargetActive = false;
private bool isTargetOperationInProgress = false;
public ModelTrackControl ModelTrackControl { set; get; }
protected override void OnInitialized()
{
ModelTrackControl = this.GetModule();
}
private async Task ToggleTarget()
{
if (isTargetOperationInProgress) return;
isTargetOperationInProgress = true;
StateHasChanged();
isTargetActive = !isTargetActive;
if(isTargetActive){
this.ModelTrackControl.StartTarget();
}else{
this.ModelTrackControl.RevertTarget();
}
// 模拟靶机操作延迟
await Task.Delay(2000);
dataActionStatus.Rotate = isTargetActive ? 90 : 0;
isTargetOperationInProgress = false;
StateHasChanged();
}
}