Ответы пользователя по тегу Линейная алгебра
  • Как повернуть уравнение плоскости относительно точки?

    PavelK
    @PavelK Автор вопроса
    Спасибо всем! Я адцки затупил =)))
    Если кому будет полезно, матрица поворота по всем осям сразу:
    this.rotate = function(u,v,w)
    {
    var cu = Math.cos(u);
    var su = Math.sin(u);
    var cv = Math.cos(v);
    var sv = Math.sin(v);
    var cw = Math.cos(w);
    var sw = Math.sin(w);

    _a[0][0]= cu*cv; _a[1][0]= cu*sv*sw - su*cw; _a[2][0]= cu*sv*cw + su*sw;
    _a[0][1]= su*cv; _a[1][1]= su*sv*sw + cu*cw; _a[2][1]= su*sv*cw - cu*sw;
    _a[0][2]= -sv; _a[1][2]= cv*sw; _a[2][2]= cv*cw;

    return this;
    };

    Что бы вращение шло вокруг точки, нужно сначала создать матрицу перемещения и умножить её на матрицу вращения.
    Ответ написан
    Комментировать