GrabBag/App/DiscHolePose/DiscHolePoseConfig/Inc/DetectionOutputConverter.h

38 lines
1.2 KiB
C
Raw Normal View History

#ifndef DETECTIONOUTPUTCONVERTER_H
#define DETECTIONOUTPUTCONVERTER_H
#include "IVrConfig.h"
#include "IYDiscHolePoseStatus.h"
#include <QJsonObject>
class DetectionOutputConverter
{
public:
// 砂轮盘孔检测结果转换
static ProtocolDetectionOutput ConvertDiscHoleResult(
const std::vector<DiscHoleInfo>& discHoleInfoList,
bool success,
int errorCode,
const QString& message,
int cameraIndex);
// 砂轮盘架子检测结果转换
static ProtocolDetectionOutput ConvertDiscRackResult(
const std::vector<DiscRackInfo>& discRackInfoList,
bool success,
int errorCode,
const QString& message,
int cameraIndex);
// JSON 序列化
static QJsonObject DiscHoleOutputToJson(const DiscHoleDetectOutput& output);
static QJsonObject DiscRackOutputToJson(const DiscRackDetectOutput& output);
static QJsonObject ToJson(const ProtocolDetectionOutput& output);
// 从法向量计算欧拉角
static void NormalDirToEuler(double nx, double ny, double nz,
double& roll, double& pitch, double& yaw);
};
#endif // DETECTIONOUTPUTCONVERTER_H