将一个三维点CvPoint3D64f Result=cvPoint3D64f(X,Y,Z)写入
CvMat *pointsXYD=cvCreateMat( 1,
1, CV_64FC3); 中:
cvSet2D(pointsXYD, 0, 0, cvScalar( Result.x, Result.y, Result.z ) );
读取矩阵中的元素:
CvMat *result3DPoints=cvCreateMat( 1,
1, CV_64FC3);
X = cvGet2D(result3DPoints,0,0).val[0];
Y = cvGet2D(result3DPoints,0,0).val[1];
Z = cvGet2D(result3DPoints,0,0).val[2];
或者:
double *ptr=(double*)(result3DPoints->data.ptr);
X=*ptr;
Y=*(ptr+1);
Z=*(ptr+2);