}/// <summary> /// call openGL mglRotated /// </summary> /// <param name="axo"></param> public void render3d(AxmjboglCtl axo) { if (coding == (int)cde.CODING_AXISANGLE) { axo.mglRotated(angle * 180 / Math.PI, x, y, z); return; } double s = Math.Sqrt(1 - angle * angle); if (Math.Abs(s) < 0.001) s = 1; axo.mglRotated(Math.Acos(angle) * 360 / Math.PI, x / s, y / s, z / s); }/// <summary>
/// call openGL mglRotated /// </summary> /// <param name="axo"></param> public void render3d(AxmjboglCtl axo) { if (coding == (int)cde.CODING_AXISANGLE) { axo.mglRotated(angle * 180 / Math.PI, x, y, z); return; } double s = Math.Sqrt(1 - angle * angle); if (Math.Abs(s) < 0.001) s = 1; axo.mglRotated(Math.Acos(angle) * 360 / Math.PI, x / s, y / s, z / s); }