Пример #1
0
        private static void EvalStepByStep()
        {
            string htmlLog;

            E e = E.Sum(E.Div(E.NumConst(1),
                              E.Num("d")),
                        E.Mul(E.Num("a"), E.Div(E.Sum(E.Num("b"), E.NumConst(14), E.Num("c")),
                                                E.Num("d"))));

            e = e.EvaluateStepByStep(out htmlLog, "a", 2, "b", 33, "c", 24);

            E    x         = E.Num("x");
            E    y         = E.Num("y");
            E    z         = E.Num("z");
            Vec4 v         = new Vec4(x, y, z, E.Zero);
            Mat4 rotToX    = Mat4.RotToX(v);
            Mat4 rotXAlpha = Mat4.RotX(E.Num("alpha"));
            Mat4 r         = rotToX * rotXAlpha;

            r.EvaluateStepByStep(out htmlLog /*, "x", 1, "y", 1, "z", 1*/);

            Mat4 rotX = Mat4.RotX(E.Num("phi"));
            Mat4 rotY = Mat4.RotY(E.Num("theta"));
            Mat4 rotZ = Mat4.RotZ(E.Num("psi"));

            r = rotX * rotY * rotZ;
            r.EvaluateStepByStep(out htmlLog);

            Mat4 rotToZ = Mat4.RotToZ(v);

            r = rotToZ.Evaluate();
        }