三维坐标变换为二维坐标//为什么二维不用double P2D[8][3];而用double P2D[8][2]???
//为什么二维不用double P2D[8][3];而用double P2D[8][2]???
void CSixView::Transform3DTo2D(const double P3D[][4], double P2D[][2], const int n)//三维坐标变换为二维坐标
{
//三维坐标
//P3D[0][0]=0;P3D[0][1]=0;P3D[0][2]=0;P3D[0][3]=1;//A点(0,0,0)
//P3D[1][0]=0;P3D[1][1]=a;P3D[1][2]=0;P3D[1][3]=1;//B点(0,a,0)
//P3D[2][0]=0;P3D[2][1]=a;P3D[2][2]=a;P3D[2][3]=1;//C点(0,a,a)
//P3D[3][0]=0;P3D[3][1]=0;P3D[3][2]=a;P3D[3][3]=1;//D点(0,0,a)
//P3D[4][0]=a;P3D[4][1]=0;P3D[4][2]=0;P3D[4][3]=1;//E点(a,0,0)
//P3D[5][0]=a;P3D[5][1]=a;P3D[5][2]=0;P3D[5][3]=1;//F点(a,a,0)
//P3D[6][0]=a;P3D[6][1]=a;P3D[6][2]=a;P3D[6][3]=1;//G点(a,a,a)
//P3D[7][0]=a;P3D[7][1]=0;P3D[7][2]=a;P3D[7][3]=1;//H点(a,0,a)
for(int i=0;i<n;i++)
{
P2D[i][0]=P3D[i][1]-P3D[i][0]/sqrt(2.0);
P2D[i][1]=-P3D[i][2]+P3D[i][0]/sqrt(2.0);
}
}