Bitbybit Docs
    Preparing search index...

    Class BabylonTransforms

    Construye matrices de transformación para mover, rotar y escalar geometría, usando las matemáticas de BabylonJS. Una transformación es una matriz 4x4 como 16 números en orden de columnas; la mayoría de los métodos devuelven una lista corta de ellas que se aplica en orden, de modo que una rotación alrededor de un punto es un desplazamiento al origen, la rotación y el desplazamiento de vuelta. Los ángulos están en grados. El servicio transforms del paquete base construye las mismas matrices sin el motor.

    Index

    Constructors

    rotation

    • Construye una rotación alrededor de un eje que pasa por un punto central, como tres matrices aplicadas en orden: mover el centro al origen, rotar, volver a mover. El ángulo está en grados.

      Parameters

      Returns TransformMatrixes

      La lista de matrices que aplicar en orden

      const turn = bitbybit.babylon.transforms.rotationCenterAxis({ angle: 90, axis: [0, 1, 0], center: [5, 0, 0] });
      
    • Construye una rotación alrededor de una recta paralela al eje X que pasa por un punto central, como tres matrices aplicadas en orden: mover el centro al origen, rotar, volver a mover. El ángulo está en grados.

      Parameters

      Returns TransformMatrixes

      La lista de matrices que aplicar en orden

      const turn = bitbybit.babylon.transforms.rotationCenterX({ angle: 90, center: [0, 0, 0] });
      
    • Construye una rotación alrededor de una recta paralela al eje Y que pasa por un punto central, como tres matrices aplicadas en orden: mover el centro al origen, rotar, volver a mover. El ángulo está en grados.

      Parameters

      Returns TransformMatrixes

      La lista de matrices que aplicar en orden

      const turn = bitbybit.babylon.transforms.rotationCenterY({ angle: 90, center: [0, 0, 0] });
      
    • Construye una rotación alrededor de una recta paralela al eje Z que pasa por un punto central, como tres matrices aplicadas en orden: mover el centro al origen, rotar, volver a mover. El ángulo está en grados.

      Parameters

      Returns TransformMatrixes

      La lista de matrices que aplicar en orden

      const turn = bitbybit.babylon.transforms.rotationCenterZ({ angle: 90, center: [0, 0, 0] });
      
    • Construye una rotación a partir de tres ángulos alrededor de un punto central: la guiñada gira alrededor de Y, el cabeceo alrededor de X y el alabeo alrededor de Z, en grados. El resultado son tres matrices aplicadas en orden: mover el centro al origen, rotar, volver a mover.

      Parameters

      Returns TransformMatrixes

      La lista de matrices que aplicar en orden

      const turn = bitbybit.babylon.transforms.rotationCenterYawPitchRoll({ yaw: 90, pitch: 0, roll: 0, center: [0, 0, 0] });
      
    • Construye una escala con su propio factor por eje, medida desde un punto central que se queda en su sitio, como tres matrices aplicadas en orden: mover el centro al origen, escalar, volver a mover.

      Parameters

      Returns TransformMatrixes

      La lista de matrices que aplicar en orden

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

    scale

    • Construye una escala con su propio factor por eje, medida desde el origen; [2, 3, 1] duplica X, triplica Y y conserva Z.

      Parameters

      Returns TransformMatrixes

      Una lista con la única matriz de escala

      const stretch = bitbybit.babylon.transforms.scaleXYZ({ scaleXyz: [2, 3, 1] });
      
    • Construye una escala por el mismo factor en todos los ejes, medida desde el origen, de modo que 2 hace todo el doble de grande y el doble de lejos del origen.

      Parameters

      Returns TransformMatrixes

      Una lista con la única matriz de escala

      const double = bitbybit.babylon.transforms.uniformScale({ scale: 2 });
      
    • Construye una escala por el mismo factor en todos los ejes, medida desde un punto central que se queda en su sitio, como tres matrices aplicadas en orden: mover el centro al origen, escalar, volver a mover.

      Parameters

      Returns TransformMatrixes

      La lista de matrices que aplicar en orden

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

    translation

    • Construye un desplazamiento según un vector; [10, 5, 0] mueve 10 a lo largo de X, 5 a lo largo de Y y nada a lo largo de Z.

      Parameters

      Returns TransformMatrixes

      Una lista con la única matriz de traslación

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

    translations

    • Construye un desplazamiento por vector, para transformar muchos objetos cada uno según su propio vector, en el mismo orden.

      Parameters

      Returns TransformMatrixes[]

      Una transformación por vector, en el mismo orden

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