Bitbybit Docs
    Preparing search index...

    Class BabylonTransforms

    Constrói matrizes de transformação para mover, rodar e escalar geometria, usando a matemática do BabylonJS. Uma transformação é uma matriz 4x4 como 16 números por ordem de colunas; a maioria dos métodos devolve uma lista curta delas que é aplicada por ordem, pelo que uma rotação em torno de um ponto é um movimento para a origem, a rotação, e o movimento de volta. Os ângulos estão em graus. O serviço transforms do pacote base constrói as mesmas matrizes sem o motor.

    Index

    Constructors

    rotation

    • Constrói uma rotação em torno de um eixo que passa por um ponto central, como três matrizes aplicadas por ordem: mover o centro para a origem, rodar, mover de volta. O ângulo está em graus.

      Parameters

      Returns TransformMatrixes

      A lista de matrizes a aplicar por ordem

      const turn = bitbybit.babylon.transforms.rotationCenterAxis({ angle: 90, axis: [0, 1, 0], center: [5, 0, 0] });
      
    • Constrói uma rotação em torno de uma linha paralela ao eixo X que passa por um ponto central, como três matrizes aplicadas por ordem: mover o centro para a origem, rodar, mover de volta. O ângulo está em graus.

      Parameters

      Returns TransformMatrixes

      A lista de matrizes a aplicar por ordem

      const turn = bitbybit.babylon.transforms.rotationCenterX({ angle: 90, center: [0, 0, 0] });
      
    • Constrói uma rotação em torno de uma linha paralela ao eixo Y que passa por um ponto central, como três matrizes aplicadas por ordem: mover o centro para a origem, rodar, mover de volta. O ângulo está em graus.

      Parameters

      Returns TransformMatrixes

      A lista de matrizes a aplicar por ordem

      const turn = bitbybit.babylon.transforms.rotationCenterY({ angle: 90, center: [0, 0, 0] });
      
    • Constrói uma rotação em torno de uma linha paralela ao eixo Z que passa por um ponto central, como três matrizes aplicadas por ordem: mover o centro para a origem, rodar, mover de volta. O ângulo está em graus.

      Parameters

      Returns TransformMatrixes

      A lista de matrizes a aplicar por ordem

      const turn = bitbybit.babylon.transforms.rotationCenterZ({ angle: 90, center: [0, 0, 0] });
      
    • Constrói uma rotação a partir de três ângulos em torno de um ponto central: yaw roda em torno de Y, pitch em torno de X e roll em torno de Z, em graus. O resultado são três matrizes aplicadas por ordem: mover o centro para a origem, rodar, mover de volta.

      Parameters

      Returns TransformMatrixes

      A lista de matrizes a aplicar por ordem

      const turn = bitbybit.babylon.transforms.rotationCenterYawPitchRoll({ yaw: 90, pitch: 0, roll: 0, center: [0, 0, 0] });
      
    • Constrói uma escala com o seu próprio fator por eixo, medida a partir de um ponto central que fica no lugar, como três matrizes aplicadas por ordem: mover o centro para a origem, escalar, mover de volta.

      Parameters

      Returns TransformMatrixes

      A lista de matrizes a aplicar por ordem

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

    scale

    • Constrói uma escala com o seu próprio fator por eixo, medida a partir da origem; [2, 3, 1] duplica X, triplica Y e mantém Z.

      Parameters

      Returns TransformMatrixes

      Uma lista com a única matriz de escala

      const stretch = bitbybit.babylon.transforms.scaleXYZ({ scaleXyz: [2, 3, 1] });
      
    • Constrói uma escala pelo mesmo fator em todos os eixos, medida a partir da origem, de modo que 2 torna tudo duas vezes maior e duas vezes mais longe da origem.

      Parameters

      Returns TransformMatrixes

      Uma lista com a única matriz de escala

      const double = bitbybit.babylon.transforms.uniformScale({ scale: 2 });
      
    • Constrói uma escala pelo mesmo fator em todos os eixos, medida a partir de um ponto central que fica no lugar, como três matrizes aplicadas por ordem: mover o centro para a origem, escalar, mover de volta.

      Parameters

      Returns TransformMatrixes

      A lista de matrizes a aplicar por ordem

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

    translation

    • Constrói um movimento por um vetor; [10, 5, 0] move 10 ao longo de X, 5 ao longo de Y e nada ao longo de Z.

      Parameters

      Returns TransformMatrixes

      Uma lista com a única matriz de translação

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

    translations

    • Constrói um movimento por vetor, para transformar muitos objetos cada um pelo seu próprio vetor, pela mesma ordem.

      Parameters

      Returns TransformMatrixes[]

      Uma transformação por vetor, pela mesma ordem

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