修改第三方仿真环境适配器接口,增加数据交换接口,版本更新到0.2.2
This commit is contained in:
parent
635a34c843
commit
9ce5ec248e
19
CHANGELOG.md
19
CHANGELOG.md
@ -5,6 +5,25 @@
|
||||
格式基于 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.0.0/)。
|
||||
版本规范基于 [Semantic Versioning](https://semver.org/lang/zh-CN/)。
|
||||
|
||||
## [未发布]
|
||||
|
||||
### 计划功能
|
||||
- Matlab/Simulink 仿真环境适配器
|
||||
- 支持与 Simulink 模型的数据交互
|
||||
- 实现实时仿真数据同步
|
||||
- 处理不同时间步长的协调
|
||||
-
|
||||
## [0.2.2] - 2025-02-13
|
||||
|
||||
### 功能优化
|
||||
- 修改第三方仿真环境适配器接口
|
||||
- 增加状态数据接口
|
||||
- 增加环境参数设置接口
|
||||
- 增加仿真时间同步接口
|
||||
|
||||
- 增加仿真环境数据类
|
||||
- 增加大气密度、温度、湿度、风速、能见度、地形高程等参数
|
||||
|
||||
## [0.2.1] - 2025-01-10
|
||||
|
||||
### 功能优化
|
||||
|
||||
@ -1,8 +1,47 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using ThreatSource.Utils;
|
||||
|
||||
namespace ThreatSource.Simulation
|
||||
{
|
||||
/// <summary>
|
||||
/// 仿真环境数据类,包含环境相关的参数
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 该类封装了仿真环境的关键参数:
|
||||
/// - 大气参数(密度、温度、湿度)
|
||||
/// - 气象条件(风速、能见度)
|
||||
/// - 地理信息(地形、高程)
|
||||
/// 用于模拟真实环境对仿真的影响
|
||||
/// </remarks>
|
||||
public class SimulationEnvironmentData
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置大气密度,单位:千克/立方米
|
||||
/// </summary>
|
||||
public double AtmosphericDensity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置风速向量,单位:米/秒
|
||||
/// </summary>
|
||||
public Vector3D WindVelocity { get; set; } = Vector3D.Zero;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置环境温度,单位:开尔文
|
||||
/// </summary>
|
||||
public double Temperature { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置相对湿度,范围:0-1
|
||||
/// </summary>
|
||||
public double RelativeHumidity { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置能见度,单位:米
|
||||
/// </summary>
|
||||
public double Visibility { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 第三方仿真环境适配器接口
|
||||
/// </summary>
|
||||
@ -22,7 +61,7 @@ namespace ThreatSource.Simulation
|
||||
/// <summary>
|
||||
/// 发布事件到第三方仿真环境
|
||||
/// </summary>
|
||||
/// <typeparam name="T">事件类型</typeparam>
|
||||
/// <typeparam name="T">事件类型</typeparam>
|
||||
/// <param name="evt">要发布的事件</param>
|
||||
/// <remarks>
|
||||
/// 用于将威胁源仿真库中的事件同步到外部仿真环境
|
||||
@ -38,6 +77,26 @@ namespace ThreatSource.Simulation
|
||||
/// 用于接收外部仿真环境的事件并在威胁源仿真库中处理
|
||||
/// </remarks>
|
||||
void ReceiveFromExternalSimulation<T>(T evt);
|
||||
|
||||
/// <summary>
|
||||
/// 获取实体的状态
|
||||
/// </summary>
|
||||
/// <param name="id">实体ID</param>
|
||||
/// <returns>实体的状态数据</returns>
|
||||
SimulationElement GetEntityState(string id);
|
||||
|
||||
/// <summary>
|
||||
/// 设置实体的环境数据
|
||||
/// </summary>
|
||||
/// <param name="id">实体ID</param>
|
||||
/// <param name="data">实体的环境数据</param>
|
||||
void SetEntityEnvironment(string id, SimulationEnvironmentData data);
|
||||
|
||||
/// <summary>
|
||||
/// 同步仿真时间
|
||||
/// </summary>
|
||||
/// <param name="simulationTime">仿真时间</param>
|
||||
void SynchronizeTime(double simulationTime);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user