Bitbybit Docs
    Preparing search index...

    Class BabylonNode

    Nodos de transformación: puntos invisibles con una posición y una orientación a los que se pueden emparentar mallas y otros nodos, para que todo un grupo se mueva como uno solo. Construir una jerarquía de nodos es la manera de colocar disposiciones complejas: gira el padre y todos los hijos giran con él. Los métodos de aquí crean nodos, leen sus ejes y posiciones en el espacio del mundo o local, y los mueven, rotan y reemparentan; los ángulos están en grados.

    Index

    Constructors

    Methods

    • Dibuja los tres ejes de un nodo como líneas coloreadas de la longitud dada, emparentadas a él, de modo que su posición y orientación pueden verse; los colores predeterminados son rojo para X, verde para Y y azul para Z.

      Parameters

      • inputs: DrawNodeDto

        El nodo, los colores de los ejes y la longitud de los ejes

      Returns void

      bitbybit.babylon.node.drawNode({ node, colorX: "#ff0000", colorY: "#00ff00", colorZ: "#0000ff", size: 2 });
      
    • Dibuja los tres ejes de varios nodos como líneas coloreadas de la longitud dada, cada conjunto emparentado a su nodo, como hace drawNode para uno.

      Parameters

      • inputs: DrawNodesDto

        Los nodos, los colores de los ejes y la longitud de los ejes

      Returns void

      bitbybit.babylon.node.drawNodes({ nodes: [nodeA, nodeB], colorX: "#ff0000", colorY: "#00ff00", colorZ: "#0000ff", size: 2 });
      
    • Crea un nodo en origin girado por los tres ángulos rotation en grados alrededor de X, Y y Z, dentro del sistema de coordenadas de parent cuando se da uno.

      Parameters

      Returns TransformNode

      El nuevo nodo

      const node = bitbybit.babylon.node.createNodeFromRotation({ parent: null, origin: [0, 5, 0], rotation: [0, 45, 0] });
      
    • Crea un nodo emparentado al nodo raíz de la escena, un punto de partida limpio para construir una jerarquía en el origen del mundo.

      Returns TransformNode

      El nuevo nodo, cuyo padre es el nodo raíz de la escena

      const world = bitbybit.babylon.node.createWorldNode();
      const arm = bitbybit.babylon.node.createNodeFromRotation({ parent: world, origin: [0, 5, 0], rotation: [0, 0, 30] });
    • Lee la dirección a la que apunta el eje Z local de un nodo en el espacio del mundo, con la rotación de todos los padres aplicada.

      Parameters

      Returns number[]

      La dirección hacia delante como vector

    • Lee la dirección a la que apunta el eje X local de un nodo en el espacio del mundo, con la rotación de todos los padres aplicada.

      Parameters

      Returns number[]

      La dirección hacia la derecha como vector

    • Lee la dirección a la que apunta el eje Y local de un nodo en el espacio del mundo, con la rotación de todos los padres aplicada.

      Parameters

      Returns number[]

      La dirección hacia arriba como vector

    • Lee dónde está el origen de un nodo en el espacio del mundo, con la transformación de todos los padres aplicada.

      Parameters

      Returns number[]

      La posición en el mundo como punto

    • Lee la rotación de un nodo en el espacio del mundo, con la rotación de todos los padres aplicada, como una matriz 4x4 de 16 números.

      Parameters

      Returns number[]

      La rotación como matriz de 16 números

    • Lee la rotación de un nodo relativa a su padre como una matriz 4x4 de 16 números; el nodo debe llevar un cuaternión de rotación, que rotate y setDirection le dan.

      Parameters

      Returns number[]

      La rotación como matriz de 16 números

    • Lista los nodos y mallas emparentados directamente bajo un nodo, los que se mueven con él.

      Parameters

      Returns Node[]

      Los hijos directos

    • Lee el nodo al que está emparentado un nodo, con el que se mueve; un nodo de nivel superior no tiene ninguno.

      Parameters

      Returns Node

      El nodo padre

    • Lee la posición de un nodo medida en sus propios ejes locales en lugar de los de su padre, lo que difiere una vez que el nodo está rotado.

      Parameters

      Returns number[]

      La posición como punto en el espacio local del nodo

    • Da el nodo raíz de la escena, la cima de la jerarquía a la que createWorldNode emparenta.

      Returns TransformNode

      El nodo raíz

    • Lee la rotación de un nodo relativa a su padre como tres ángulos en grados alrededor de X, Y y Z.

      Parameters

      Returns number[]

      Los ángulos de rotación en grados

    • Gira un nodo angle grados alrededor de un eje que pasa por position, de modo que el nodo orbita ese punto en lugar de girar en el sitio; sus hijos lo siguen.

      Parameters

      Returns void

      bitbybit.babylon.node.rotateAroundAxisWithPosition({ node, position: [0, 0, 0], axis: [0, 1, 0], angle: 90 });
      
    • Gira un nodo angle grados alrededor de un eje que pasa por su propio origen, sobre su rotación actual; sus hijos lo siguen.

      Parameters

      • inputs: RotateNodeDto

        El nodo, la dirección del eje y el ángulo en grados

      Returns void

      bitbybit.babylon.node.rotate({ node, axis: [0, 1, 0], angle: 45 });
      
    • Mueve un nodo a un punto del espacio del mundo, sean cuales sean sus padres; sus hijos lo siguen.

      Parameters

      Returns void

      bitbybit.babylon.node.setAbsolutePosition({ node, position: [10, 0, 0] });
      
    • Gira un nodo de modo que su eje Z local apunte a lo largo de direction; sus hijos lo siguen.

      Parameters

      Returns void

      bitbybit.babylon.node.setDirection({ node, direction: [1, 0, 0] });
      
    • Emparenta un nodo a otro para que a partir de entonces se mueva con él, conservando su lugar actual en el mundo; un padre null lo desvincula.

      Parameters

      Returns void

      bitbybit.babylon.node.setParent({ node: wheel, parentNode: car });
      
    • Mueve un nodo distance unidades de escena a lo largo de direction, dada en los ejes locales propios del nodo; sus hijos lo siguen.

      Parameters

      Returns void

      bitbybit.babylon.node.translate({ node, direction: [0, 1, 0], distance: 5 });