55 lines
1.9 KiB
C#
55 lines
1.9 KiB
C#
using ThreatSource.Utils;
|
||
|
||
namespace ThreatSource.Guidance
|
||
{
|
||
/// <summary>
|
||
/// 制导系统接口,定义了所有制导系统的通用功能
|
||
/// </summary>
|
||
/// <remarks>
|
||
/// 该接口提供了制导系统的基本功能规范:
|
||
/// - 制导状态判断
|
||
/// - 制导信息更新
|
||
/// - 制导加速度计算
|
||
/// 是所有具体制导系统实现的基础
|
||
/// </remarks>
|
||
public interface IGuidanceSystem
|
||
{
|
||
/// <summary>
|
||
/// 获取是否有有效的制导信息
|
||
/// </summary>
|
||
/// <remarks>
|
||
/// true表示当前有可用的制导信息
|
||
/// false表示无法获得有效制导
|
||
/// 用于判断制导系统的工作状态
|
||
/// </remarks>
|
||
bool HasGuidance { get; }
|
||
|
||
/// <summary>
|
||
/// 更新制导系统的状态和计算结果
|
||
/// </summary>
|
||
/// <param name="deltaTime">自上次更新以来的时间间隔,单位:秒</param>
|
||
/// <param name="missilePosition">导弹当前位置,单位:米</param>
|
||
/// <param name="missileVelocity">导弹当前速度,单位:米/秒</param>
|
||
/// <remarks>
|
||
/// 更新过程:
|
||
/// - 获取最新目标信息
|
||
/// - 计算制导参数
|
||
/// - 更新制导状态
|
||
/// - 生成制导指令
|
||
/// </remarks>
|
||
//void Update(double deltaTime, Vector3D missilePosition, Vector3D missileVelocity);
|
||
|
||
/// <summary>
|
||
/// 获取制导加速度指令
|
||
/// </summary>
|
||
/// <returns>三维制导加速度向量,单位:米/平方秒</returns>
|
||
/// <remarks>
|
||
/// 返回数据:
|
||
/// - X分量:横向制导加速度
|
||
/// - Y分量:垂直制导加速度
|
||
/// - Z分量:纵向制导加速度
|
||
/// 用于导弹的轨迹控制
|
||
/// </remarks>
|
||
Vector3D GetGuidanceAcceleration();
|
||
}
|
||
} |