参考 http://blog.163.com/tianhit@yeah/blog/static/165747821201052195212719/
#include <iostream>
using namespace std;
class cameraLocation
{
private:
//左相机内参数矩阵
float leftIntrinsic[3][3];
//左相机旋转参数
float leftRotation[3][3];
//左相机平移向量
float leftTranslation[1][3];
//右相机内参数矩阵
float rightIntrinsic[3][3];
//右相机旋转矩阵
float rightRotation[3][3];
//右相机平移向量
float rightTranslation[1][3];
public:
//参数只写上第二维大小
void getAllcameraList(float(*left_Intrinsic)[3], float(*left_Rotation)[3], float(*left_Translation)[3],
float(*right_Intrinsic)[3], float(*right_Rotation)[3], float(*right_Translation)[3])
{
//不必一个一个赋值,注意sizeof()大小
memcpy(left_Intrinsic, leftIntrinsic, sizeof(leftIntrinsic));
memcpy(left_Rotation, leftRotation, sizeof(leftRotation));
memcpy(left_Translation, leftTranslation, sizeof(leftTranslation));
memcpy(right_Intrinsic, rightIntrinsic, sizeof(rightIntrinsic));
memcpy(right_Rotation, rightRotation, sizeof(rightRotation));
memcpy(right_Translation, rightTranslation, sizeof(rightTranslation));
}
};
int main()
{
cameraLocation mcameraLocation;
//左相机内参数矩阵
float leftIntrinsic[3][3];
//左相机旋转参数
float leftRotation[3][3];
//左相机平移向量
float leftTranslation[1][3];
//右相机内参数矩阵
float rightIntrinsic[3][3];
//右相机旋转矩阵
float rightRotation[3][3];
//右相机平移向量
float rightTranslation[1][3];
//注意参数指向首地址
mcameraLocation.getAllcameraList(&leftIntrinsic[0], &leftRotation[0], &leftTranslation[0],
&rightIntrinsic[0], &rightRotation[0], &rightTranslation[0]);
return 0;
}