1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- using KYFramework;
- using Model;
- using MongoDB.Bson;
- using QuYuSaoMiao;
- namespace SimulationServer;
- public class AircraftZC : AircraftEntity
- {
- public string missionId;
- public List<double[]> SC01;
- public ZCTask content;
- public double[] Velocitys = new double[5]{220,220,220,110,0}; // 速度
- public double[] FuelConsumptions = new double[5]{2800,2800,2800,1000,132}; // 燃油消耗
- public double time;
-
- public override void Start()
- {
- FXJHGenerate.FromStartToMission(FlightPlanEditor,ref TurningPoints);//生成从起点到任务段起点的航路点
- SC01 = GeDianShengCheng.scanroute(content.poly,content.ScanRange,content.hSC,content.isRealHeight,content.isSurround,content.SurroundNum,GeDianShengCheng.DemHelper());//侦查模型输出的航路点位置
- FXJHGenerate.ZhenCha(SC01, FlightPlanEditor,ref TurningPoints);
- FXJHGenerate.FromMissionToEnd(FlightPlanEditor, FXJHGenerate.ZhenChaMissionEndPoint(SC01),ref TurningPoints);
- FXJHGenerate.FXJHTPDiedai(FlightPlanEditor,ref TurningPoints, Velocitys, FuelConsumptions);
-
- TotalFuelConsumption = TurningPoints[0].RemainingFuel - TurningPoints[^1].RemainingFuel;
- for (int i = 0; i < SC01.Count + 3; i++)
- {
- time += TurningPoints[i].SegmentFlightTime;
- }
- Log.Info($"{missionId} 任务结束!总飞行时间:{time} 总油耗:{TotalFuelConsumption}");
- }
- }
- [ObjectSystem]
- public class AircraftZCAwakeSystem : AwakeSystem<AircraftZC,FlightPlanEditor,ZCTask,int>
- {
- public override void Awake(AircraftZC self,FlightPlanEditor flightPlanEditor,ZCTask zcTask,int index)
- {
- self.content = zcTask;
- self.FlightPlanEditor = flightPlanEditor;
- self.missionId = zcTask.missionInformation.MissionName;
- self.AircraftId = zcTask.missionInformation.AircraftId[index];
- self.Name = zcTask.missionInformation.AircraftInfos[index];
- self.TaskReadyTime = zcTask.missionInformation.TakeoffPreparationTime;
- }
- }
|