|
|
dc62ba8c82
|
修复云团间距半径基准不一致 + 消除硬编码 30f
逻辑层修复(前端反馈的云团缝隙问题):
- ComputeEffectiveRadius 应用 ExpansionFactor,返回穿越时刻半径
- 间距/车道/弹药数统一用 effectiveRadius(原用 turbulentRadius=R30)
- TryGenerateFireEvents 复用 ComputeEffectiveRadius,消除重复计算
- 概率计算间距也加重叠系数
- GaussianPuffDispersion 消除硬编码 30f,读 _ammo.Phase2Duration
- DefensePlanner 消除硬编码 30f,读 model.Phase2Duration
- 265 测试通过,Unity 编译通过
|
2026-06-25 21:53:34 +08:00 |
|
|
|
9d81ba0b28
|
新增 GetDefenseRecommendation 防御推荐方案 + 去掉 Critical
- IScenarioService 新增 GetDefenseRecommendation(scenarioId)
- ScenarioService 构造函数加可选 IPathProvider + IDefensePlanner
- DefenseRecommendation / RecommendOption 返回类型
- 前端调用获取最佳抛撒参数 → 用户一键应用写入 CloudDispersal
- 去掉 Critical(省弹药到 50% 概率,无决策价值)
- Unity ScenarioManager 桥接 + 构造注入 planner
- 对接文档加推荐用法示例
- 265 测试通过(+3 推荐),Unity 编译通过
|
2026-06-22 08:05:09 +08:00 |
|
|
|
0002e7efbe
|
SensorSpec +HasRadar/HasEO/HasIR 显式类型字段
- SensorSpec 新增三个 bool 字段,前端直接读取探测设备类型,无需推断
- DefaultData.Load 后由 Range 字段派生填充
- 支持复合传感器(如光电+红外 eo-station)
- 对接文档同步更新
- 262 测试通过,Unity 编译通过
|
2026-06-21 10:39:14 +08:00 |
|
|
|
a6ad8a348e
|
GetEnums() +SensorType 枚举(雷达/光电/红外)
- 新增 SensorType 枚举(Radar=0, EO=1, IR=2)供前端探测设备 UI 分类
- EnumMetadata + GetEnums() 加入 SensorType(含中文翻译)
- 对接文档同步更新
- 262 测试通过,Unity 编译通过
|
2026-06-21 10:33:57 +08:00 |
|
|
|
fb3c6fd2eb
|
EnumMetadata +EntityType + ScenarioUnit +AmmunitionSpecId
- GetEnums() 新增 EntityType 枚举(模型管理 UI 区分 Drone/Platform/DetectionEquip)
- ScenarioUnit 新增 AmmunitionSpecId 字段(FK → AmmunitionSpec,前端弹药配置用)
- 对接文档同步更新
- 262 测试通过,Unity 编译通过
|
2026-06-20 22:33:12 +08:00 |
|
|
|
e9c10bfe7d
|
GetEnums +EntityType 枚举(Drone/Platform/DetectionEquip/Cloud/Munition)
|
2026-06-20 12:04:51 +08:00 |
|
|
|
8bcf4cf675
|
VERSION 0.12.0 — PDF 导出 + 报告模板架构 + 对接文档 V2.0
- PdfSharpCore 1.3.64 引入(纯托管,Unity IL2CPP 兼容,+9 DLL)
- ReportData 结构化模型 + MarkdownRenderer + StandardPdfTemplate
- IReportService.ExportReport(id, format) 按需导出 PDF/MD
- 仿真后自动生成 MD 到 reports 目录,PDF 按需调用
- CJK 字体嵌入(SimHei),IPathProvider + GetFontPath
- ReportGenerator 重构为构建 ReportData,去掉 emoji
- check_unity_build.ps1 修复 -quit 参数缺失导致超时
- 对接文档 V2.0:坐标系/3D 可视化/完整枚举/Manager 签名/模型字段
- 262 测试全部通过
|
2026-06-20 11:57:38 +08:00 |
|
|
|
f77fb88487
|
Unity 脚本适配:FireUnitSpecId→LaunchPlatformSpecId + DLL 更新
|
2026-06-19 21:56:41 +08:00 |
|
|
|
dabf367b21
|
VERSION 0.11.0 — LaunchPlatformSpec 分离 + 代码审查 + 250 测试
- LaunchPlatformSpec:纯发射参数,SensorSpec 统一探测
- 代码审查:拆分 DefaultData/AlgorithmTypes/SpecRepositories
- GetEnums 中英文对照 / ModelId 3D 引用
- DataServiceTests +12 / 死代码清除
- 250/250 全过
|
2026-06-19 21:50:10 +08:00 |
|
|
|
b23b19e4e9
|
LaunchPlatformSpec 适配完成:预设场景+测试加 SensorSpecId,250 全过
- DefaultScenarios 每个部署加 AddDetection
- TestData.CreateScenarioUnit 默认带 radar-sr
- FullPipelineTests 探测测试加 SensorSpec 引用
- 发射平台与探测设备完全分离
|
2026-06-19 21:46:54 +08:00 |
|
|
|
8a198a27a0
|
新增 LaunchPlatformSpec:发射平台与探测设备分离
- LaunchPlatformSpec(纯发射参数,无探测字段)
- ScenarioUnit.FireUnitSpecId → LaunchPlatformSpecId
- PlatformEntity/BuildFireUnits/BuildDetectionSources 适配
- ReportGenerator/ReportService 适配
- FireUnitSpec 保留但不使用
- 243/250 通过,7 个待修
|
2026-06-19 21:43:06 +08:00 |
|
|
|
4b2677e224
|
GetEnums 返回中英文对照:EnumItem{Name,ChineseName,Value} 替代 Dictionary<string,int>
- EnumMetadata 每个枚举从 Dictionary 改为 List<EnumItem>
- ScenarioService 内置中文翻译(与 ReportGenerator 统一)
- 250 测试全过
|
2026-06-19 21:24:51 +08:00 |
|
|
|
2a062c07bd
|
+DataServiceTests (12 个) / 修复 FormationTemplate 缺 PrimaryKey / 删除死代码
|
2026-06-19 10:35:42 +08:00 |
|
|
|
d3248d80a3
|
删除死代码:MunitionEntity._hasExceededReleaseAltitude
|
2026-06-19 10:32:33 +08:00 |
|
|
|
2adacffe85
|
拆分 AlgorithmTypes: Vector3/DetectionSource 独立文件;SpecRepositories 拆分为独立文件;命名空间修正
|
2026-06-19 10:30:34 +08:00 |
|
|
|
dbe6808df7
|
更新 Unity DLL
|
2026-06-19 10:08:05 +08:00 |
|
|
|
7415d07d9f
|
更新 Unity DLL
|
2026-06-18 19:52:51 +08:00 |
|
|
|
ce11e0eb1f
|
修复 Unity 编译:EnumMetadata using + nullable 警告
|
2026-06-18 19:49:38 +08:00 |
|
|
|
d73b586982
|
更新 Unity DLL(ScenarioDrone/ScenarioUnit 新表结构)
|
2026-06-18 17:50:42 +08:00 |
|
|
|
e30f173312
|
修复 Unity Manager 脚本:适配 ScenarioDrone/ScenarioUnit 新 schema
|
2026-06-18 17:50:15 +08:00 |
|
|
|
537671ab3a
|
DroneProfile→ScenarioDrone / EquipmentDeployment→ScenarioUnit 重命名
- 模型表: ScenarioDrone(原DroneProfile) / ScenarioUnit(原EquipmentDeployment)
- ScenarioConfig.Equipment→Units
- 数据库旧表清理 + scenariosVersion 4→5
- 238 测试全过
|
2026-06-18 16:36:25 +08:00 |
|
|
|
9f682c9b91
|
SaveTarget→SaveDroneProfile + 测试方法名同步
|
2026-06-18 15:55:37 +08:00 |
|
|
|
67cea1490d
|
Target→Profile / Targets→DroneProfiles 重命名
- DroneWave.Target → Profile
- ScenarioConfig.Targets → DroneProfiles
- DefensePlanner / SimulationEngine / ReportService 全部引用同步
- 更新 Unity DLL + defaults.json
- 238 测试全过
|
2026-06-18 15:37:25 +08:00 |
|
|
|
0434920100
|
更新 Unity DLL 编译产物
|
2026-06-18 15:25:20 +08:00 |
|
|
|
def3996f4f
|
更新编译产物:Core.dll 复制到 Unity Plugins
|
2026-06-18 13:43:14 +08:00 |
|
|
|
fb87fdfa22
|
统一平台物理模型:去除空基/地基分支
- BuildCandidate 合并 BuildAirBased/GroundBasedCandidate 为单一方法,统一用 MuzzleVelocity
- TryGenerateFireEvents 统一用 InterceptCalculator.Compute,去除 ComputeHorizontal
- 抛物线选解策略:两解逐一验证可行性(距离匹配 + fireTime>0),选最早拦截的解
- 空基 FireUnit 补充 MuzzleVelocity 字段(等于 CruiseSpeed)
- 所有 238 个单元测试通过
|
2026-06-18 13:40:48 +08:00 |
|
|
|
3d33aac428
|
fix: 强制同步 Core.dll(unity_plugins 在 gitignore 中)
|
2026-06-17 20:24:00 +08:00 |
|