Bitbybit Docs
    Preparing search index...

    Class BabylonTransforms

    Строит матрицы преобразования для перемещения, поворота и масштабирования геометрии средствами математики BabylonJS. Преобразование - это матрица 4x4 из 16 чисел в порядке по столбцам; большинство методов возвращают короткий список таких матриц, который применяется по порядку, так что поворот вокруг точки - это перенос в начало координат, поворот и перенос обратно. Углы в градусах. Сервис transforms в базовом пакете строит те же матрицы без движка.

    Index

    Constructors

    rotation

    • Строит поворот вокруг оси, проходящей через центральную точку, как три матрицы, применяемые по порядку: сдвинуть центр в начало координат, повернуть, сдвинуть обратно. Угол в градусах.

      Parameters

      Returns TransformMatrixes

      Список матриц, применяемых по порядку

      const turn = bitbybit.babylon.transforms.rotationCenterAxis({ angle: 90, axis: [0, 1, 0], center: [5, 0, 0] });
      
    • Строит поворот вокруг прямой, параллельной оси X, через центральную точку, как три матрицы, применяемые по порядку: сдвинуть центр в начало координат, повернуть, сдвинуть обратно. Угол в градусах.

      Parameters

      Returns TransformMatrixes

      Список матриц, применяемых по порядку

      const turn = bitbybit.babylon.transforms.rotationCenterX({ angle: 90, center: [0, 0, 0] });
      
    • Строит поворот вокруг прямой, параллельной оси Y, через центральную точку, как три матрицы, применяемые по порядку: сдвинуть центр в начало координат, повернуть, сдвинуть обратно. Угол в градусах.

      Parameters

      Returns TransformMatrixes

      Список матриц, применяемых по порядку

      const turn = bitbybit.babylon.transforms.rotationCenterY({ angle: 90, center: [0, 0, 0] });
      
    • Строит поворот вокруг прямой, параллельной оси Z, через центральную точку, как три матрицы, применяемые по порядку: сдвинуть центр в начало координат, повернуть, сдвинуть обратно. Угол в градусах.

      Parameters

      Returns TransformMatrixes

      Список матриц, применяемых по порядку

      const turn = bitbybit.babylon.transforms.rotationCenterZ({ angle: 90, center: [0, 0, 0] });
      
    • Строит поворот из трех углов вокруг центральной точки: рыскание поворачивает вокруг Y, тангаж вокруг X и крен вокруг Z, в градусах. Результат - три матрицы, применяемые по порядку: сдвинуть центр в начало координат, повернуть, сдвинуть обратно.

      Parameters

      Returns TransformMatrixes

      Список матриц, применяемых по порядку

      const turn = bitbybit.babylon.transforms.rotationCenterYawPitchRoll({ yaw: 90, pitch: 0, roll: 0, center: [0, 0, 0] });
      
    • Строит масштаб со своим коэффициентом на каждую ось, отсчитываемый от центральной точки, которая остается на месте, как три матрицы, применяемые по порядку: сдвинуть центр в начало координат, масштабировать, сдвинуть обратно.

      Parameters

      Returns TransformMatrixes

      Список матриц, применяемых по порядку

      const stretch = bitbybit.babylon.transforms.scaleCenterXYZ({ center: [5, 5, 5], scaleXyz: [2, 1, 0.5] });
      

    scale

    • Строит масштаб со своим коэффициентом на каждую ось, отсчитываемый от начала координат; [2, 3, 1] удваивает X, утраивает Y и сохраняет Z.

      Parameters

      Returns TransformMatrixes

      Список с одной матрицей масштабирования

      const stretch = bitbybit.babylon.transforms.scaleXYZ({ scaleXyz: [2, 3, 1] });
      
    • Строит масштаб с одним коэффициентом по каждой оси, отсчитываемый от начала координат, так что 2 делает все вдвое больше и вдвое дальше от начала координат.

      Parameters

      Returns TransformMatrixes

      Список с одной матрицей масштабирования

      const double = bitbybit.babylon.transforms.uniformScale({ scale: 2 });
      
    • Строит масштаб с одним коэффициентом по каждой оси, отсчитываемый от центральной точки, которая остается на месте, как три матрицы, применяемые по порядку: сдвинуть центр в начало координат, масштабировать, сдвинуть обратно.

      Parameters

      Returns TransformMatrixes

      Список матриц, применяемых по порядку

      const half = bitbybit.babylon.transforms.uniformScaleFromCenter({ scale: 0.5, center: [5, 5, 5] });
      

    translation

    • Строит перемещение на вектор; [10, 5, 0] сдвигает на 10 вдоль X, на 5 вдоль Y и никак вдоль Z.

      Parameters

      Returns TransformMatrixes

      Список с одной матрицей переноса

      const move = bitbybit.babylon.transforms.translationXYZ({ translation: [10, 5, 0] });
      

    translations

    • Строит по одному перемещению на вектор, для преобразования многих объектов каждого своим вектором, в том же порядке.

      Parameters

      Returns TransformMatrixes[]

      По одному преобразованию на каждый вектор, в том же порядке

      const moves = bitbybit.babylon.transforms.translationsXYZ({ translations: [[1, 0, 0], [0, 2, 0]] });