using Model; using Newtonsoft.Json; public class Base { [JsonProperty("基地名称")] public string BaseName; //[JsonProperty("位置信息")] //public string BasePositionInfo; [JsonProperty("基地编号")] public int BaseId; [JsonProperty("基地经度")] public double BaseLongitude; [JsonProperty("基地纬度")] public double BaseLatitude; [JsonProperty("基地海拔")] public double BaseHeight; } public class Hospital { [JsonProperty("基地名称")] public string BaseName; //[JsonProperty("位置信息")] //public string BasePositionInfo; [JsonProperty("基地编号")] public int BaseId; [JsonProperty("基地经度")] public double BaseLongitude; [JsonProperty("基地纬度")] public double BaseLatitude; [JsonProperty("基地海拔")] public double BaseHeight; } public struct AircraftParameter { [JsonProperty("机型")] public string AircraftID; [JsonProperty("飞机编号")] public string Id;//如1-2,1表示基地1,2表示基地1中的2号飞机 [JsonProperty("类型")] public string AircraftType; [JsonProperty("子类型")] public string AircraftSubType; [JsonProperty("所属机场ID")] public int AirportId; //[JsonProperty("状态")] //public string AircraftState; //[JsonProperty("已连续工作时间")] //public double AircraftRunTime; [JsonProperty("任务载荷型号")] public TaskLoadType taskLoadType; [JsonProperty("任务载荷")] public TaskLoad taskLoad; [JsonProperty("最大起飞重量")] public double MaxTakeoffWeight; [JsonProperty("最大载油量")] public double MaxFuelCapacity; [JsonProperty("最大载客数量")] public double MaxPassengerNumber; } public class TaskLoadType { [JsonProperty("雷达设备")] public string RadarEquipment; [JsonProperty("光电探测设备")] public string PhotoelectricDetectionEquipment; } public class TaskLoad { [JsonProperty("急救装备")] public string[] FirstAid; [JsonProperty("搬运和固定装备")] public string[] HandlingAndFixing; [JsonProperty("诊断和监测装备")] public string[] DiagnosisAndMonitoring; [JsonProperty("外伤装备")] public string[] Trauma; [JsonProperty("输液装备")] public string[] Infusion; [JsonProperty("绞车型号")] public string[] WinchModel; [JsonProperty("医疗药品")] public string[] Drug; } public class FirePoint { [JsonProperty("火点ID")] public int FirePointId; [JsonProperty("火点经度")] public double FirePointLongitude; [JsonProperty("火点纬度")] public double FirePointLatitude; [JsonProperty("火点海拔")] public double FirePointHeight; [JsonProperty("初始火场面积")] public double InitialArea; [JsonProperty("初始火线长度")] public double fireLength; } public class TargetPoint//搜救目标点初始坐标 { [JsonProperty("目标点ID")] public int TargetPointId; [JsonProperty("目标点经度")] public double TargetPointLongitude; [JsonProperty("目标点纬度")] public double TargetPointLatitude; [JsonProperty("目标点海拔")] public double TargetPointHeight; [JsonProperty("目标气象信息")] public TargetQiXiangInfo TargetQiXiangInfo; [JsonProperty("目标类型")] public TargetType TargetType; } public class MedicalSuppliesInfo //医疗物品需求信息 { [JsonProperty("目标点名称")] public string TargetPointName; [JsonProperty("目标点ID")] public int TargetPointId; [JsonProperty("目标点经度")] public double TargetPointLongitude; [JsonProperty("目标点纬度")] public double TargetPointLatitude; [JsonProperty("目标点海拔")] public double TargetPointHeight; [JsonProperty("目标气象信息")] public TargetQiXiangInfo[] TargetQiXiangInfos; [JsonProperty("目标类型")] public TargetType TargetType; } public class MedicalTargetPoint //医疗目标点坐标 { [JsonProperty("目标点ID")] public int TargetPointId; [JsonProperty("目标点经度")] public double TargetPointLongitude; [JsonProperty("目标点纬度")] public double TargetPointLatitude; [JsonProperty("目标点海拔")] public double TargetPointHeight; [JsonProperty("目标气象信息")] public TargetQiXiangInfo[] TargetQiXiangInfos; [JsonProperty("目标类型")] public TargetType TargetType; } public class TargetQiXiangInfo { [JsonProperty("00-08温度")] public double Temperature_00_08; [JsonProperty("00-08湿度")] public double Humidity_00_08; [JsonProperty("00-08能见度")] public double Visibility_00_08; [JsonProperty("00-08风速")] public double WindSpeed_00_08; [JsonProperty("00-08风向")] public double WindDirection_00_08; [JsonProperty("00-08天气")] public string Weather_00_08; [JsonProperty("08-19温度")] public double Temperature_08_19; [JsonProperty("08-19湿度")] public double Humidity_08_19; [JsonProperty("08-19能见度")] public double Visibility_08_19; [JsonProperty("08-19风速")] public double WindSpeed_08_19; [JsonProperty("08-19风向")] public double WindDirection_08_19; [JsonProperty("08-19天气")] public string Weather_08_19; [JsonProperty("19-24温度")] public double Temperature_19_24; [JsonProperty("19-24湿度")] public double Humidity_19_24; [JsonProperty("19-24能见度")] public double Visibility_19_24; [JsonProperty("19-24风速")] public double WindSpeed_19_24; [JsonProperty("19-24风向")] public double WindDirection_19_24; [JsonProperty("19-24天气")] public string Weather_19_24; [JsonProperty("时间")] public string time; [JsonProperty("温度")] public double Temperature; [JsonProperty("湿度")] public double Humidity; [JsonProperty("能见度")] public double Visibility; [JsonProperty("风速")] public double WindSpeed; [JsonProperty("风向")] public double WindDirection; [JsonProperty("天气")] public string Weather; } public class TargetType { [JsonProperty("类型")] public string Type; [JsonProperty("人员数量")] public int Count; [JsonProperty("重量")] public double Weight; [JsonProperty("载人数")] public int LoadCount; [JsonProperty("吨位")] public double Tonnage; [JsonProperty("长度")] public double Length; [JsonProperty("携带定位设备")] public bool GPS; [JsonProperty("预计剩余存活时间")] public double LiveTime; [JsonProperty("雷达截面面积")] public double RadarArea; [JsonProperty("探测目标面积")] public double TargetArea; [JsonProperty("探测目标亮度")] public double TargetBrightness; [JsonProperty("时间窗口")] public double Time; [JsonProperty("疾病类型")] public string[] diseaseTypes; } public class RescueDemandInfo//救援需求信息 { [JsonProperty("需求点名称")] public string DemandPointName; [JsonProperty("需求点ID")] public int DemandPointID; [JsonProperty("目标点经度")] public double TargetPointLongitude; [JsonProperty("目标点纬度")] public double TargetPointLatitude; [JsonProperty("目标点海拔")] public double TargetPointHeight; [JsonProperty("目标气象信息")] public TargetQiXiangInfo TargetQiXiangInfo; [JsonProperty("目标类型")] public TargetType TargetType; } public class GoodsPersonPoint//物资人员点 { [JsonProperty("物资点名称")] public string GoodsPointName; [JsonProperty("物资点编号")] public int GoodsPointID; [JsonProperty("取水点经度")] public double WaterPointLongitude; [JsonProperty("取水点纬度")] public double WaterPointLatitude; [JsonProperty("取水点海拔")] public double WaterPointHeight; } public class ClimbSegment { [JsonProperty("爬升段速度")] public double ClimbVelocity; [JsonProperty("爬升段油耗率")] public double ClimbFuelConsumptionRate; } public class DescentSegment { [JsonProperty("下降段速度")] public double DescentVelocity; [JsonProperty("下降段油耗率")] public double DescentFuelConsumptionRate; } public class CruiseSegment { [JsonProperty("巡航段高度")] public double CruiseHeight = 2000; [JsonProperty("巡航段速度")] public double CruiseVelocity; [JsonProperty("巡航段油耗率")] public double CruiseFuelConsumptionRate; } public struct CityWeather { [JsonProperty("调用方式")] public string CallMethod; [JsonProperty("温度")] public double Temperature; //能见度 [JsonProperty("能见度")] public double Visibility; //水温 [JsonProperty("水温")] public double WaterTemperature; } public struct ScenarioInfo { [JsonProperty("想定日期")] public string Data; [JsonProperty("想定时间")] public string Time; } public class EditorConfig { [JsonProperty("仿真次数")] public int runCounts; [JsonProperty("想定信息")] public ScenarioInfo scenarioInfo = new ScenarioInfo(); [JsonProperty("基地信息")] public List bases = new List(); [JsonProperty("医院")] public List hospitals = new List(); [JsonProperty("飞行器信息")] public ListaircraftParameters = new List(); [JsonProperty("医疗物品需求信息")] public List medicalSuppliesInfos = new List(); [JsonProperty("医疗目标点坐标")] public List medicalTargetPoints = new List(); [JsonProperty("火点")] public List firePoints = new List(); [JsonProperty("天气信息")] public CityWeather cityWeather = new CityWeather(); [JsonProperty("搜救目标点初始坐标")] public List targetPoints = new List(); [JsonProperty("救援需求信息")] public List rescueDemandInfos = new List(); [JsonProperty("物资人员点")] public List goodsPersonPoints = new List(); }