public void quaytheotruc(Truc truc, float goc, xyzpoint[] td_Axis, int points) { double hshc = 1.001D; switch (truc) { case Truc.x: for (int i = 0; i < points; i++) { td_Axis[i].y = (td_Axis[i].y * Math.Cos(goc) - td_Axis[i].z * Math.Sin(goc)) * hshc; td_Axis[i].z = (td_Axis[i].z * Math.Cos(goc) + td_Axis[i].y * Math.Sin(goc)) * hshc; } break; case Truc.z: for (int i = 0; i < points; i++) { td_Axis[i].y = (td_Axis[i].y * Math.Cos(goc) - td_Axis[i].x * Math.Sin(goc)) * hshc; td_Axis[i].x = (td_Axis[i].x * Math.Cos(goc) + td_Axis[i].y * Math.Sin(goc)) * hshc; } break; case Truc.y: for (int i = 0; i < points; i++) { td_Axis[i].x = (td_Axis[i].x * Math.Cos(goc) - td_Axis[i].z * Math.Sin(goc)); td_Axis[i].z = (td_Axis[i].z * Math.Cos(goc) + td_Axis[i].x * Math.Sin(goc)); } break; } }
public xypoint map3to2(xyzpoint p) { xyzpoint tam = p; xypoint convert; int halfwidth = 180; tam.y = tam.y + 400; tam.y = tam.y + halfwidth; convert.x = (int)(tam.x * tam.y / 800 + halfwidth) - 110; convert.y = (int)(halfwidth - tam.y * tam.z / 800) + 100; return (convert); }