16,472
社区成员
发帖
与我相关
我的任务
分享
POINT C3DPlot::CoordinateTo3D(double dwXValue, double dwYValue, double dwZValue)
{
POINT point;
double x = dwXValue, y = dwYValue, z = dwZValue;
double x1 = 0, y1 = 0, z1 = 0;
double x11 = 0, y11 = 0, z11 = 0;
int B = -45;
int A = -45;
// 绕Y轴旋转
x1 = z * sin(atr(B)) + x * cos(atr(B));
y1 = y;
z1 = z * cos(atr(B)) - x * sin(atr(B));
// 绕Z轴旋转
x11 = x1 * cos(atr(A)) - y1 * sin(atr(A));
y11 = x1 * sin(atr(A)) + y1 * cos(atr(A));
z11 = z1;
point.x = (LONG)( m_nX0 + x11 );
point.y = (LONG)( m_nY0 -y11 );
m_pDC->MoveTo( m_nX0, m_nY0 );
m_pDC->LineTo( point.x, point.y );
return point;
}