三视图

三维坐标点投影到二维屏幕上的点时:

x1= y- x/

y1= -z+ x/

要计算在屏幕上的投影值,即相当于下图中计算点在YZ上的坐标值,其中,XY,Z轴夹角均为135,PP1=z.故可计算二维坐标,要记住屏幕窗口的原点在左上角,X往右递增,Y往下递增.

代码如下(计算机图形学实例43(Visual C++版) 孔令德): 

void CTestView::Transform3DTo2D(const double P3D[7][5],double P2D[7][3],const int n)
{//三维坐标变换为二维坐标
 for(int i=1;i<=n;i++)
 {
  P2D[i][1]=P3D[i][2]-P3D[i][1]/sqrt(2);
  P2D[i][2]=-P3D[i][3]+P3D[i][1]/sqrt(2);
 }
}

你可能感兴趣的:(三视图)