|
|
|
@ -19,23 +19,28 @@ float calc_fov_by_mil(float mil, int mil_type)
|
|
|
|
return (mil * 360.0f / mil_type);
|
|
|
|
return (mil * 360.0f / mil_type);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void S3315GetImagePara(unsigned char* pParamDataBuffer, ARIDLL_INPUTPARA* ImagePara)
|
|
|
|
void S3315GetImagePara(unsigned char* pParamDataBuffer, unsigned char* pResultDataBuffer, ARIDLL_INPUTPARA* ImagePara)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
ST_3315_152_NO110 pParamNO110DataBuffer = { 0 };
|
|
|
|
ST_3315_152_NO110* pParamNO110DataBuffer = (ST_3315_152_NO110*)calloc(640, sizeof(int));
|
|
|
|
ST_3315_152_NO149 pParamNO149DataBuffer = { 0 };
|
|
|
|
ST_3315_152_NO149* pParamNO149DataBuffer = (ST_3315_152_NO149*)calloc(640, sizeof(int));
|
|
|
|
//unsigned char* IR_para = { 0 };
|
|
|
|
ST_3315_152_NO65* pParamNO65DataBuffer = (ST_3315_152_NO65*)calloc(640, sizeof(int));
|
|
|
|
//memcpy(IR_para, pParamDataBuffer, 1280);
|
|
|
|
unsigned char* IR_para = { 0 };
|
|
|
|
//memcpy(&pParamNO110DataBuffer, pParamDataBuffer + 1280, 640);
|
|
|
|
//memcpy(IR_para, pParamDataBuffer, 1280);
|
|
|
|
// memcpy(&pParamNO149DataBuffer, pParamDataBuffer + 1920, 640);
|
|
|
|
memcpy(pParamNO110DataBuffer, pParamDataBuffer, 640);
|
|
|
|
//ImagePara->stServoInfo.fServoAz = calc_fov_by_mil(pParamNO149DataBuffer.B1B0,6000);
|
|
|
|
memcpy(pParamNO149DataBuffer, pParamDataBuffer+ 640, 640);
|
|
|
|
//ImagePara->stServoInfo.fServoPt = calc_fov_by_mil(pParamNO149DataBuffer.B3B2,6000);
|
|
|
|
memcpy(pParamNO65DataBuffer, pParamDataBuffer + 1280, 640);
|
|
|
|
//std::cout << std::hex << std::setw(8) << "pParamDataBuffer" << std::setfill('0') << reinterpret_cast<std::uintptr_t>(pParamDataBuffer) << ": " ;
|
|
|
|
ImagePara->stServoInfo.fServoAz = calc_fov_by_mil(pParamNO65DataBuffer->B1B0 , 6000) * 6000.0f / 65536.0f;
|
|
|
|
//for (int i = 0; i < 21; ++i)
|
|
|
|
ImagePara->stServoInfo.fServoPt = calc_fov_by_mil(pParamNO65DataBuffer->B3B2, 6000) * 6000.0f / 65536.0f;
|
|
|
|
//{
|
|
|
|
ImagePara->stCameraInfo.fPixelSize = 25;
|
|
|
|
// std::cout << std::hex << std::setw(4) << std::setfill('0') << static_cast<int>(pParamDataBuffer[i]) << " " ;
|
|
|
|
ImagePara->stCameraInfo.nFocus = 302;
|
|
|
|
//}
|
|
|
|
ImagePara->unFreq = 50;
|
|
|
|
//std::cout << std::endl;
|
|
|
|
/*std::cout << std::hex << std::setw(8) << "pParamDataBuffer" << std::setfill('0') << reinterpret_cast<std::uintptr_t>(pParamDataBuffer) << ": ";
|
|
|
|
|
|
|
|
for (int i = 0; i < 640; ++i)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
std::cout << std::hex << std::setw(4) << std::setfill('0') << static_cast<int>(pParamDataBuffer[1280+i]) << " " ;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
std::cout << std::endl;*/
|
|
|
|
//int w = uint8_t(pParamDataBuffer[20]);
|
|
|
|
//int w = uint8_t(pParamDataBuffer[20]);
|
|
|
|
//ImagePara->stServoInfo.fServoAz = pParamDataBuffer[258];
|
|
|
|
// ImagePara->stServoInfo.fServoAz = pParamDataBuffer[258];
|
|
|
|
//ImagePara->stServoInfo.fServoPt = pParamDataBuffer[259];
|
|
|
|
//ImagePara->stServoInfo.fServoPt = pParamDataBuffer[259];
|
|
|
|
}
|
|
|
|
}
|