[求助]这里有谁知道三维坐标转换的公式吗?
我只知道平面坐标旋转公式……
void __fastcall TFormMain::Normal()这个是在C++BUILD 6.0里面的声明格式
在VC里面只要void Normal()就可以了
void __fastcall TFormMain::Normal( float*p1,float*p2,float*p3,float*n ) //三维坐标转置矩阵
{ float A[3], B[3], l;
A[0] = p1[0] - p2[0];
A[1] = p1[1] - p2[1];
A[2] = p1[2] - p2[2];
B[0] = p3[0] - p2[0];
B[1] = p3[1] - p2[1];
B[2] = p3[2] - p2[2];
n[0] = B[1]*A[2] - B[2]*A[1];
n[1] = B[2]*A[0] - B[0]*A[2];
n[2] = B[0]*A[1] - B[1]*A[0];
l = sqrt(n[0]*n[0] + n[1]*n[1] + n[2]*n[2]);
if(l!=0)
{
n[0]=n[0]/l;
n[1]=n[1]/l;
n[2]=n[2]/l;
}
}