91 lines
2.0 KiB
C++
91 lines
2.0 KiB
C++
#pragma once
|
|
|
|
#include "messagebasic.h"
|
|
|
|
|
|
// 体积盒可视化插件定义消息 =======================================================
|
|
/// <summary>
|
|
/// 获取体积盒详细数据
|
|
/// </summary>
|
|
struct MESSAGEBASIC_EXPORT Get3DBox : public AbstractMessage {
|
|
Get3DBox();
|
|
std::shared_ptr<Serializable> newDefault() const override;
|
|
};
|
|
|
|
/// <summary>
|
|
/// 姿态数据结构定义
|
|
/// </summary>
|
|
struct Posture {
|
|
double _azimuth_deg = 0;
|
|
double _pitch_deg = 0;
|
|
double _roll_deg = 0;
|
|
};
|
|
/// <summary>
|
|
/// 三维数据结构定义
|
|
/// </summary>
|
|
struct VolumeData {
|
|
double _length_m = 0;
|
|
double _width_m = 0;
|
|
double _height_m = 0;
|
|
};
|
|
|
|
/// <summary>
|
|
/// 体积盒详细数据定义
|
|
/// </summary>
|
|
struct MESSAGEBASIC_EXPORT Box3DDesc : public AbstractMessage {
|
|
VolumeData _d3_data;
|
|
Posture _posture_d3;
|
|
LonLatAlt _lla_pos;
|
|
|
|
Box3DDesc();
|
|
|
|
// 通过 WsMessage 继承
|
|
std::shared_ptr<Serializable> newDefault() const override;
|
|
void recoveryFrom(const QJsonObject& obj) override;
|
|
void saveTo(QJsonObject& obj) const override;
|
|
};
|
|
|
|
/// <summary>
|
|
/// 设置三维数据
|
|
/// </summary>
|
|
struct MESSAGEBASIC_EXPORT Set3DBoxD3Data : public AbstractMessage {
|
|
VolumeData _d3_data;
|
|
|
|
Set3DBoxD3Data();
|
|
|
|
// 通过 WsMessage 继承
|
|
std::shared_ptr<Serializable> newDefault() const override;
|
|
void recoveryFrom(const QJsonObject& obj) override;
|
|
void saveTo(QJsonObject& obj) const override;
|
|
};
|
|
|
|
/// <summary>
|
|
/// 设置姿态数据
|
|
/// </summary>
|
|
struct MESSAGEBASIC_EXPORT Set3DBoxPosture : public AbstractMessage
|
|
{
|
|
Posture _posture_d3;
|
|
|
|
Set3DBoxPosture();
|
|
|
|
// 通过 WsMessage 继承
|
|
std::shared_ptr<Serializable> newDefault() const override;
|
|
void recoveryFrom(const QJsonObject& obj) override;
|
|
void saveTo(QJsonObject& obj) const override;
|
|
};
|
|
|
|
/// <summary>
|
|
/// 设置地理定位
|
|
/// </summary>
|
|
struct MESSAGEBASIC_EXPORT Set3DBoxLLAPos : public AbstractMessage
|
|
{
|
|
LonLatAlt _lla_pos;
|
|
|
|
Set3DBoxLLAPos();
|
|
|
|
// 通过 WsMessage 继承
|
|
std::shared_ptr<Serializable> newDefault() const override;
|
|
void recoveryFrom(const QJsonObject& obj) override;
|
|
void saveTo(QJsonObject& obj) const override;
|
|
};
|