49 lines
1.4 KiB
C
49 lines
1.4 KiB
C
|
|
#pragma once
|
|||
|
|
|
|||
|
|
#if defined(VZ_API_LIBRARY)
|
|||
|
|
# define VZ_APISHARED_EXPORT __declspec(dllexport)
|
|||
|
|
#else
|
|||
|
|
# define VZ_APISHARED_EXPORT __declspec(dllimport)
|
|||
|
|
#endif
|
|||
|
|
|
|||
|
|
#include <VZNL_Types.h>
|
|||
|
|
#include "SG_baseDataType.h"
|
|||
|
|
|
|||
|
|
//<2F>Թ<EFBFBD><D4B9><EFBFBD><EFBFBD><EFBFBD>ΪX<CEAA><58>(ɨ<>跽<EFBFBD><EFBFBD>ƽ<EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>Z<EFBFBD>ᴹֱ<E1B4B9><D6B1><EFBFBD><EFBFBD>ΪY<CEAA>ᣬ<EFBFBD><E1A3AC>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΪZ<CEAA><5A>
|
|||
|
|
typedef struct
|
|||
|
|
{
|
|||
|
|
bool validFlag; //ָʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч
|
|||
|
|
double x;
|
|||
|
|
double y;
|
|||
|
|
double z;
|
|||
|
|
double pitchAngle; //<2F><><EFBFBD><EFBFBD><EFBFBD>ǣ<EFBFBD><C7A3><EFBFBD>Y<EFBFBD><59><EFBFBD><EFBFBD>ƫת, <20><><EFBFBD><EFBFBD>
|
|||
|
|
double rollAngle; //<2F><>ת<EFBFBD>ǣ<EFBFBD><C7A3><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD>ƫת, <20><><EFBFBD><EFBFBD>
|
|||
|
|
double yawAngle; //ƫת<C6AB>ǣ<EFBFBD><C7A3><EFBFBD>Z<EFBFBD><5A><EFBFBD><EFBFBD>ƫת, <20><><EFBFBD><EFBFBD>
|
|||
|
|
}SSG_6AxisAttitude;
|
|||
|
|
|
|||
|
|
typedef struct
|
|||
|
|
{
|
|||
|
|
bool validFlag; //ָʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>Ч
|
|||
|
|
double x;
|
|||
|
|
double y;
|
|||
|
|
double z;
|
|||
|
|
}SSG_3AxisAttitude;
|
|||
|
|
|
|||
|
|
class ISGFireBrick
|
|||
|
|
{
|
|||
|
|
public:
|
|||
|
|
ISGFireBrick() = default;
|
|||
|
|
virtual ~ISGFireBrick() = default;
|
|||
|
|
|
|||
|
|
virtual const char* GetVersion() = 0;
|
|||
|
|
|
|||
|
|
virtual void sgSegHistScale(double) = 0;
|
|||
|
|
virtual void sgCalibCamPose() = 0;
|
|||
|
|
virtual void sgSetPoseSortingMode(ESG_poseSortingMode mode) = 0;
|
|||
|
|
virtual ESG_poseSortingMode sgGetPoseSortingMode() = 0;
|
|||
|
|
virtual void sgScanLineProc(SVzNL3DLaserLine* a_line, double* camPoseR, int* errCode) = 0;
|
|||
|
|
virtual void sgGetBrickPose(SVzNL3DLaserLine* scanData, int nLines, std::vector<SSG_6AxisAttitude>& brickPoses, int* errCode) = 0;
|
|||
|
|
virtual void sgSortBrickPoses(std::vector<SSG_6AxisAttitude>& brickPoses, ESG_poseSortingMode sortingMode) = 0;
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
VZ_APISHARED_EXPORT bool SGCreateFireBrick(double dHistScale, ISGFireBrick** ppFireBrick);
|