Qt下的雷达终端示例程序,拟实现以下功能模块。
其中ppi的绘制基于QwtPolar库。
单例,实现全局参数的管理,配置文件读写。
终端绑定的本机Ipv4地址和端口号。
- 第一次运行程序将默认值写入配置文件
- 从配置文件读取
- 界面修改
- 程序关闭时保存
终端绑定的雷达Ipv4地址和端口号。
- 第一次运行程序将默认值写入配置文件
- 从配置文件读取
- 界面修改
- 程序关闭时保存
雷达法线与正北方向夹角,顺时针为正。
- 根据雷达回传值修改
QDateTime格式。
- 运行程序时读取本机时间
- 增加1s
- 根据雷达回传值修改
包括雷达的经度、纬度、海拔。
- 根据雷达回传值修改
- 每1s调用时间增加1s函数
单例,实现将数据发送到雷达。
- 可移动到线程中
- 程序启动时从全局参数类获取
- 全局参数修改时从全局参数类获取
- 程序启动时从全局参数类获取
- 全局参数修改时从全局参数类获取
- 绑定本地网络参数
- 本地网络参数改变时重新绑定
- 发送数据到雷达
- 定时发送数据(频率可设置)
单例,实现接收雷达发来的数据。
- 可移动到线程中
- 程序启动时从全局参数类获取
- 全局参数修改时从全局参数类获取
- 程序启动时从全局参数类获取
- 全局参数修改时从全局参数类获取
- 绑定本地网络参数
- 本地网络参数改变时重新绑定
- 接收数据,并添加到缓冲区
- 定时检查是否有雷达回传的数据,以判断雷达连接状态(频率可设置)
单例,实现解析接收到的雷达数据。
- 可移动到线程中
- 从缓冲区找到相应报文,并取出
- 按照解析取出的报文,转化为结构体,并发射信号通知需要数据的类
绘制雷达点迹数据,通过极坐标点(方位, 距离)的队列
- 可设置颜色
- 可设置队列最大容量
- 可控制显隐
- 可添加极坐标点(方位,距离)
- 可清空点数据队列
绘制雷达航迹数据,通过极坐标点(方位, 距离)的队列
- 可设置颜色
- 可设置一批航迹最大点数
- 可控制是否绘制连接线
- 可控制显隐
- 可控制选中
- 可添加极坐标点
- 可查找是否包含某一极坐标点
- 可清空点数据队列
- 可标记航迹已经结束
- 超过时间标记该批航迹无效
绘制雷达航迹最后一个点。
- 绘制批号
- 可设置颜色
- 可改变位置
绘制雷达扫描线。
- 可设置颜色
- 可控制显隐
- 可设置结束点位置
绘制雷达平面指示器。
- 可缩放
- 可漫游
- 定时或根据数据刷新扫描线位置
- 分别清空点航或清全屏
- 鼠标悬浮,发送鼠标当前位置的极坐标值