using CounterDrone.Core.Models; namespace CounterDrone.Core.Algorithms { /// 毁伤模型接口 public interface IDamageModel { float CalculateDamage(DroneType droneType, PowerType powerType, AerosolType aerosolType, float cloudDensity, float exposureTime, float deltaTime); /// 达到 100% 毁伤所需的连续暴露时间 (s) float RequiredExposureSeconds(DroneType droneType, PowerType powerType, AerosolType aerosolType); DamageStage GetDamageStage(float accumulatedDamage); } }