SimsWorld/MessageBasic/visiblecube_access.h

91 lines
2.0 KiB
C
Raw Normal View History

2025-06-23 16:37:10 +00:00
#pragma once
#include "messagebasic.h"
// <20><><EFBFBD><EFBFBD><EFBFBD>п<EFBFBD><D0BF>ӻ<EFBFBD><D3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ =======================================================
/// <summary>
/// <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>
/// </summary>
struct MESSAGEBASIC_EXPORT Get3DBox : public AbstractMessage {
Get3DBox();
2025-06-28 09:10:02 +00:00
std::shared_ptr<Serializable> newDefault() const override;
2025-06-23 16:37:10 +00:00
};
/// <summary>
/// <20><>̬<EFBFBD><CCAC><EFBFBD>ݽṹ<DDBD><E1B9B9><EFBFBD><EFBFBD>
/// </summary>
struct Posture {
double _azimuth_deg = 0;
double _pitch_deg = 0;
double _roll_deg = 0;
};
/// <summary>
/// <20><>ά<EFBFBD><CEAC><EFBFBD>ݽṹ<DDBD><E1B9B9><EFBFBD><EFBFBD>
/// </summary>
struct VolumeData {
double _length_m = 0;
double _width_m = 0;
double _height_m = 0;
};
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD>ݶ<EFBFBD><DDB6><EFBFBD>
/// </summary>
struct MESSAGEBASIC_EXPORT Box3DDesc : public AbstractMessage {
VolumeData _d3_data;
Posture _posture_d3;
LonLatAlt _lla_pos;
Box3DDesc();
// ͨ<><CDA8> WsMessage <20>̳<EFBFBD>
2025-06-28 09:10:02 +00:00
std::shared_ptr<Serializable> newDefault() const override;
2025-06-23 16:37:10 +00:00
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ά<EFBFBD><CEAC><EFBFBD><EFBFBD>
/// </summary>
struct MESSAGEBASIC_EXPORT Set3DBoxD3Data : public AbstractMessage {
VolumeData _d3_data;
Set3DBoxD3Data();
// ͨ<><CDA8> WsMessage <20>̳<EFBFBD>
2025-06-28 09:10:02 +00:00
std::shared_ptr<Serializable> newDefault() const override;
2025-06-23 16:37:10 +00:00
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̬<EFBFBD><CCAC><EFBFBD><EFBFBD>
/// </summary>
struct MESSAGEBASIC_EXPORT Set3DBoxPosture : public AbstractMessage
{
Posture _posture_d3;
Set3DBoxPosture();
// ͨ<><CDA8> WsMessage <20>̳<EFBFBD>
2025-06-28 09:10:02 +00:00
std::shared_ptr<Serializable> newDefault() const override;
2025-06-23 16:37:10 +00:00
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
/// <summary>
/// <20><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>λ
/// </summary>
struct MESSAGEBASIC_EXPORT Set3DBoxLLAPos : public AbstractMessage
{
LonLatAlt _lla_pos;
Set3DBoxLLAPos();
// ͨ<><CDA8> WsMessage <20>̳<EFBFBD>
2025-06-28 09:10:02 +00:00
std::shared_ptr<Serializable> newDefault() const override;
2025-06-23 16:37:10 +00:00
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};