323 lines
12 KiB
C
323 lines
12 KiB
C
|
|
#ifndef __VIZUM_UTILS_HEADER__
|
|||
|
|
#define __VIZUM_UTILS_HEADER__
|
|||
|
|
|
|||
|
|
/*****************************************************************************
|
|||
|
|
* Vizum Detect SDK Utils *
|
|||
|
|
* Copyright (C) 2022 Vizum Technology. *
|
|||
|
|
* *
|
|||
|
|
* This file is part of VizumSDK. *
|
|||
|
|
* * *
|
|||
|
|
* *
|
|||
|
|
* @file VZNL_Utils.h *
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɵķ<EFBFBD>ʽ *
|
|||
|
|
* Details. *
|
|||
|
|
* *
|
|||
|
|
* @author Vizum *
|
|||
|
|
* @email *
|
|||
|
|
* @date 2022/07/03 *
|
|||
|
|
* *
|
|||
|
|
*----------------------------------------------------------------------------*
|
|||
|
|
* Remark : Description *
|
|||
|
|
*----------------------------------------------------------------------------*
|
|||
|
|
* Change History : *
|
|||
|
|
* <Date> | <Version> | <Author> | <Description> *
|
|||
|
|
*----------------------------------------------------------------------------*
|
|||
|
|
* 2022/07/03 | 3.6.17.10 | Vizum | <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2Dͼ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD> *
|
|||
|
|
*----------------------------------------------------------------------------*
|
|||
|
|
* *
|
|||
|
|
*****************************************************************************/
|
|||
|
|
|
|||
|
|
#include "VZNL_Export.h"
|
|||
|
|
#include "VZNL_Types.h"
|
|||
|
|
|
|||
|
|
typedef struct
|
|||
|
|
{
|
|||
|
|
union {
|
|||
|
|
struct
|
|||
|
|
{
|
|||
|
|
unsigned int bNoFirewallToken : 1; //< <20>Ƿ<EFBFBD><C7B7>з<EFBFBD><D0B7><EFBFBD>ǽȨ<C7BD><C8A8>
|
|||
|
|
unsigned int bNetWork100M : 1; //< <20>豸<EFBFBD>к<EFBFBD><D0BA><EFBFBD> 100M <20><><EFBFBD><EFBFBD>
|
|||
|
|
unsigned int bSameMACDevice : 1; //< <20><><EFBFBD><EFBFBD>ͬMAC<41><43><EFBFBD>豸
|
|||
|
|
unsigned int bVLANError : 1; //< IP<49><50><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>
|
|||
|
|
unsigned int bIsAdmin : 1; //< <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ԱȨ<D4B1><C8A8>
|
|||
|
|
unsigned int bOpenJumboFrame : 1; //< <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><CBBE><EFBFBD>֡
|
|||
|
|
unsigned int bIPConflict : 1; //< <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>IP<49><50>ַ<EFBFBD><D6B7>ͻ
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
unsigned int nCheckMask; //< <20><>Ϊ0ʱ<30><CAB1>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>
|
|||
|
|
};
|
|||
|
|
unsigned int nHostNetCardCnt; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
SVzNetCardInfo* sHostNetCard; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
|
|||
|
|
unsigned int nSameMACDeviceCnt; //<2F><><EFBFBD><EFBFBD>ͬMAC<41><43><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>
|
|||
|
|
SVzNLEyeCBInfo* sSameMACDevice; //<2F><>ͬMAC<41><43><EFBFBD>豸IP<49>б<EFBFBD>
|
|||
|
|
unsigned int nVLANErrorDeviceCnt; //IP<49><50><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>ε<EFBFBD><CEB5>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>
|
|||
|
|
SVzNLEyeCBInfo* sVLANErrorDevice; //IP<49><50><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>ε<EFBFBD><CEB5>豸IP<49>б<EFBFBD>
|
|||
|
|
unsigned int nIPConflictDeviceCnt; //IP<49><50>ַ<EFBFBD><D6B7>ͻ<EFBFBD><CDBB><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>
|
|||
|
|
SVzNLEyeCBInfo* sIPConflictDevice; //IP<49><50>ַ<EFBFBD><D6B7>ͻ<EFBFBD><CDBB><EFBFBD>豸IP<49>б<EFBFBD>
|
|||
|
|
} SVzCheckPlatformInfo;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param psPlatformInfo <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|||
|
|
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD>VzTrue˵<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>VzFalse<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>ƥ<EFBFBD><EFBFBD><EFBFBD>ĵط<EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_CheckPlatform(SVzCheckPlatformInfo* psPlatformInfo);
|
|||
|
|
|
|||
|
|
/// @name <20><>̬<EFBFBD><CCAC><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>
|
|||
|
|
/// @{
|
|||
|
|
/**
|
|||
|
|
* @brief ʹ<EFBFBD>ù̶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ
|
|||
|
|
* @param eDataType <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param p3DPoint 3D<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param nPointCount <EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param sDepthMapParam <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param ppImageData ͼ<EFBFBD><EFBFBD>
|
|||
|
|
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_CreateDepthMapImage(EVzResultDataType eDataType, void* p3DPoint, unsigned int nPointCount, SVzDepthMapImgCtlPara* sDepthMapParam, SVzNLImageData** ppImageData);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief ʹ<EFBFBD>ù̶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɻҶ<EFBFBD>ͼ
|
|||
|
|
* @param eDataType <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param p3DPoint 3D<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param nPointCount <EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param fXYScale XY<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param ppImageData ͼ<EFBFBD><EFBFBD>
|
|||
|
|
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_CreateGrayImage(EVzResultDataType eDataType, void* p3DPoint, unsigned int nPointCount, float fXYScale, SVzNLImageData** ppImageData);
|
|||
|
|
/// @}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD>ȡͼ<EFBFBD><EFBFBD>
|
|||
|
|
* @param szFileName [in] Ҫ<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ȫ·<EFBFBD><EFBFBD>
|
|||
|
|
* @param ppImageData [out] <EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD>ʵ<EFBFBD><EFBFBD>
|
|||
|
|
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_LoadImageFromFile(const char* szFileName, SVzNLImageData** ppImageData);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD>tif<EFBFBD>ļ<EFBFBD><EFBFBD>м<EFBFBD><EFBFBD><EFBFBD>3D<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param lpszFile <EFBFBD>ļ<EFBFBD>ȫ·<EFBFBD><EFBFBD>
|
|||
|
|
* @param nImageWidth ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param nImageHeight ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param eDataType <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param p3DPoint 3D<EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>
|
|||
|
|
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_LoadDepthMapTiffImage(const char* lpszFile, unsigned int* nImageWidth, unsigned int* nImageHeight, SVzNL3DPointF* p3DPoint, unsigned int* nPointCount);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD>3D<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݴ洢ΪTif<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ
|
|||
|
|
* @param lpszFile <EFBFBD>ļ<EFBFBD>ȫ·<EFBFBD><EFBFBD>
|
|||
|
|
* @param nImageWidth ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param nImageHeight ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param eDataType <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param p3DPoint 3D<EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>
|
|||
|
|
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_SaveDepthMapTiffImage(const char* lpszFile, unsigned int nImageWidth, unsigned int nImageHeight, EVzResultDataType eDataType, void* p3DPoint);
|
|||
|
|
|
|||
|
|
/// @name <20><><EFBFBD>ƺ<EFBFBD><C6BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
/// @{
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼͼ<EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>
|
|||
|
|
* @param pImageData <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD> [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]
|
|||
|
|
* @param pParam <EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]
|
|||
|
|
*/
|
|||
|
|
typedef void(*VzNL_OnOutputCloudPointAPData)(const SVzNLImageData* psImageData, const SVz3DPointMapTable* psPointMapTable, void* pParam);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Handle
|
|||
|
|
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD>ľ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI VZNLPOINTCLOUDHANDLE VzNL_CreateCloudPointAPTool();
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ,ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸Handle
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_AttachHandleForCloudPointAP(VZNLPOINTCLOUDHANDLE hCloudPointTool, VZNLHANDLE hDevice);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ,<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Handle
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_AttachDetectToolForCloudPointAP(VZNLPOINTCLOUDHANDLE hCloudPointTool, VZNLDETECTHANDLE hDetectHandle);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ,<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸Handle
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_DetachHandleForCloudPointAP(VZNLPOINTCLOUDHANDLE hCloudPointTool);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD>3D<EFBFBD><EFBFBD><EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɻҶ<EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼʱ<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>), <EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>иı<EFBFBD>,<EFBFBD><EFBFBD><EFBFBD>鿴<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> VzNL_GetCloudPointAPParam
|
|||
|
|
* @param hCloudPointTool <EFBFBD><EFBFBD><EFBFBD>ƹ<EFBFBD><EFBFBD>߾<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param p3DPosition 3D<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param nPointCount 3D<EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_SetCloudPointAPBaseLine(VZNLPOINTCLOUDHANDLE hCloudPointTool, SVzNL3DPosition* p3DPosition, unsigned int nPointCount);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ/<EFBFBD>Ҷ<EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><EFBFBD><EFBFBD>(<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɻҶ<EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼʱ<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
|||
|
|
* @param hCloudPointTool <EFBFBD><EFBFBD><EFBFBD>ƹ<EFBFBD><EFBFBD>߾<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param psDepthMapParam <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_SetCloudPointAPParam(VZNLPOINTCLOUDHANDLE hCloudPointTool, SVzDepthMapImgCtlPara* psDepthMapParam);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ(<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɻҶ<EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼʱ<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
|||
|
|
* @param hCloudPointTool <EFBFBD><EFBFBD><EFBFBD>ƹ<EFBFBD><EFBFBD>߾<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param bEnable VzTrue <EFBFBD><EFBFBD><EFBFBD><EFBFBD> / VzFalse <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @note <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ:bEnable = VzTrue <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>õ<EFBFBD>ǰһ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>߶Ȼ<EFBFBD>ʱ,<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>ģʽ,<EFBFBD><EFBFBD><EFBFBD>缤<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>U<EFBFBD><EFBFBD>Ƥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>γɸߵͲ<EFBFBD><EFBFBD>ȵ<EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>
|
|||
|
|
* U<EFBFBD><EFBFBD>Ƥ<EFBFBD><EFBFBD><EFBFBD>ϵĸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>õ<EFBFBD>0<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_EnableCloudPointAPBaseLineMode(VZNLPOINTCLOUDHANDLE hCloudPointTool, VzBool bEnable);
|
|||
|
|
VZNLAPI VzBool VzNL_IsEnableCloudPointAPBaseLineMode(VZNLPOINTCLOUDHANDLE hCloudPointTool);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɻҶ<EFBFBD> / <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼʱ<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
|||
|
|
* @paramhCloudPointTool <EFBFBD><EFBFBD><EFBFBD>ƹ<EFBFBD><EFBFBD>߾<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @paramnMinImageWidth <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_SetCloudPointAPImageWidth(VZNLPOINTCLOUDHANDLE hCloudPointTool, unsigned int nMinImageWidth);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @paramhCloudPointTool <EFBFBD><EFBFBD><EFBFBD>ƹ<EFBFBD><EFBFBD>߾<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @psDepthMapParam [out] <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_GetCloudPointAPParam(VZNLPOINTCLOUDHANDLE hCloudPointTool, SVzDepthMapImgCtlPara* psDepthMapParam);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɻҶ<EFBFBD> / <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼʱ<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
|||
|
|
* @paramhCloudPointTool <EFBFBD><EFBFBD><EFBFBD>ƹ<EFBFBD><EFBFBD>߾<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @pnImageHeight [out] <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_GetCloudPointAPImageHeight(VZNLPOINTCLOUDHANDLE hCloudPointTool, int* pnImageHeight);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD>ƴ<EFBFBD><EFBFBD><EFBFBD>(Ŀǰ<EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD> keResultDataType_Position)
|
|||
|
|
* @param hCloudPointTool <EFBFBD><EFBFBD><EFBFBD>ƹ<EFBFBD><EFBFBD>߾<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param eAfterProcType ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> kePointAfterProcType_DepthMap(<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ) kePointAfterProcType_GrayPic(<EFBFBD>Ҷ<EFBFBD>ͼ)
|
|||
|
|
* @param eDataType <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> SVzLaserLineData <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param eDirect <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɨ<EFBFBD>跽<EFBFBD><EFBFBD>
|
|||
|
|
* @param pDepthMap <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD>Ļص<EFBFBD>
|
|||
|
|
* @param pParam <EFBFBD>ص<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ط<EFBFBD>0Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD>VzNL_GetErrorInfo <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_BeginCloudPointAfterProc(VZNLPOINTCLOUDHANDLE hCloudPointTool, EVzPointAfterProcType eAfterProcType, EVzResultDataType eDataType, EVzObjRunDirect eDirect, VzNL_OnOutputCloudPointAPData pDepthMap, void* pParam);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD>ƴ<EFBFBD><EFBFBD><EFBFBD>(Ŀǰ<EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD> keResultDataType_Position)
|
|||
|
|
* @param hCloudPointTool <EFBFBD><EFBFBD><EFBFBD>ƹ<EFBFBD><EFBFBD>߾<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param psLineData <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_CloudPointAfterProc(VZNLPOINTCLOUDHANDLE hCloudPointTool, SVzLaserLineData* psLineData);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƴ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param hCloudPointTool <EFBFBD><EFBFBD><EFBFBD>ƹ<EFBFBD><EFBFBD>߾<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_EndCloudPointAfterProc(VZNLPOINTCLOUDHANDLE hCloudPointTool);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD>ٵ<EFBFBD><EFBFBD>ƴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param hCloudPointTool <EFBFBD><EFBFBD><EFBFBD>ƹ<EFBFBD><EFBFBD>߾<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_DestroyCloudPointAPTool(VZNLPOINTCLOUDHANDLE hCloudPointTool);
|
|||
|
|
/// @}
|
|||
|
|
|
|||
|
|
/// @name ͼ<><CDBC><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>
|
|||
|
|
/// @{
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param hDevice <EFBFBD>豸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI VZNLIMAGEGENERATOR VzNL_CreateImageGenerator(VZNLHANDLE hDevice);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param hImageGenerator ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param eDataType <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,Ŀǰ<EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD> keResultDataType_PointXYZRGBA <EFBFBD><EFBFBD> keResultDataType_PointGray
|
|||
|
|
* keResultDataType_PointGray <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD>Ϊ 8 bit <EFBFBD>Ҷ<EFBFBD>ͼ
|
|||
|
|
* keResultDataType_PointGray <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD>Ϊ 24 bit <EFBFBD><EFBFBD>ɫͼ
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_BeginPushPointToImageGenerator(VZNLIMAGEGENERATOR hImageGenerator, EVzResultDataType eDataType);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param hImageGenerator ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param psLineData <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_PushPointToImageGenerator(VZNLIMAGEGENERATOR hImageGenerator, SVzLaserLineData* psLineData);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƴ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param hImageGenerator ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_EndPushPointToImageGenerator(VZNLIMAGEGENERATOR hImageGenerator);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief ͨ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD>ߣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD>
|
|||
|
|
* @param hImageGenerator ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param psLineData ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_GetImageFromImageGenerator(VZNLIMAGEGENERATOR hImageGenerator, SVzNLImageData** ppImageData);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief ͨ<EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD>ߣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD>
|
|||
|
|
* @param hImageGenerator ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param lpszFile <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD> tif
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_SaveDepthMapImageFromImageGenerator(VZNLIMAGEGENERATOR hImageGenerator, const char* lpszFile);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief ͨ<EFBFBD><EFBFBD>2Dλ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>3D<EFBFBD><EFBFBD>
|
|||
|
|
* @param hImageGenerator ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param psLineData 3D<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_Find3DPointFrom2DPosForImageGenerator(VZNLIMAGEGENERATOR hImageGenerator, int nX, int nY, SVzNLPointXYZ* p3DPoint);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param hImageGenerator ͼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_DestroyImageGenerator(VZNLIMAGEGENERATOR hImageGenerator);
|
|||
|
|
|
|||
|
|
/// @}
|
|||
|
|
|
|||
|
|
/// @name <20><>ϵͳ<CFB5><CDB3><EFBFBD>غ<EFBFBD><D8BA><EFBFBD>
|
|||
|
|
/// @{
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>ǰϵͳ<EFBFBD>б<EFBFBD>
|
|||
|
|
* @param hDevice <EFBFBD>豸Handle
|
|||
|
|
* @param pnCount <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @return ϵͳ<EFBFBD>б<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI SVzSystemProjectInfo* VzNL_GetSystemPrjArray(VZNLHANDLE hDevice, int* pnCount);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD>ǰϵͳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param hDevice <EFBFBD>豸Handle
|
|||
|
|
* @param nCurSel Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>ڼ<EFBFBD><EFBFBD><EFBFBD>ϵͳΪ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>ϵͳ
|
|||
|
|
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD>0Ϊ<EFBFBD><EFBFBD>ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>GetErrorString<EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_SwitchSystemPrj(VZNLHANDLE hDevice, int nCurSel);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>ǰϵͳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @param hDevice <EFBFBD>豸Handle
|
|||
|
|
* @return <EFBFBD><EFBFBD>ǰϵͳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI int VzNL_GetCurrentSystemPrj(VZNLHANDLE hDevice);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @brief <EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>(s)
|
|||
|
|
* @param hDevice <EFBFBD>豸Handle
|
|||
|
|
* @param pnErrorCode <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
VZNLAPI double VzNL_GetSystemRuntime(VZNLHANDLE hDevice, int* pnErrorCode);
|
|||
|
|
/// @}
|
|||
|
|
#endif
|