Bitbybit Docs
    Preparing search index...

    Class BabylonIO

    Cargar modelos en la escena y exportarla: los archivos glTF, glb, STL y OBJ entran desde un File, una URL o bytes glb en bruto como una malla contenedora con sus hijos debajo, y toda la escena o las mallas elegidas salen como descargas .babylon, glb o STL.

    Index

    Constructors

    export

    • Descarga toda la escena como un archivo .babylon, el formato JSON propio del motor que sus editores y cargadores vuelven a leer; la extensión se añade cuando falta.

      Parameters

      Returns void

      bitbybit.babylon.io.exportBabylon({ fileName: "my-scene" });
      
    • Descarga toda la escena como un archivo glb, el glTF binario que la mayoría de herramientas 3D y visores web leen; discardSkyboxAndGrid omite el skybox y el suelo que añade esta biblioteca.

      Parameters

      Returns void

      bitbybit.babylon.io.exportGLB({ fileName: "my-scene", discardSkyboxAndGrid: true });
      
    • Escribe toda la escena, o los nodos elegidos con sus ancestros, como bytes glb sin descargar nada, para que puedan guardarse, enviarse o volver a cargarse con loadGlbFromArrayBuffer.

      Cada ancestro de un nodo elegido también se escribe, de modo que la geometría conserva su lugar, y el archivo lleva los materiales que las mallas tienen en el momento de la llamada.

      Parameters

      Returns Promise<Uint8Array<ArrayBufferLike>>

      El archivo glb como bytes

      const glb = await bitbybit.babylon.io.exportGLBBytes({ nodes: [chair], discardSkyboxAndGrid: true, compressWithDraco: false });
      const copy = await bitbybit.babylon.io.loadGlbFromArrayBuffer({ glbData: glb, fileName: "chair.glb", hidden: false });
    • Descarga una malla y sus mallas hijas visibles como un solo archivo STL, el formato simple de triángulos que reciben las impresoras 3D; las líneas se omiten.

      Parameters

      Returns Promise<any>

      Un objeto vacío una vez iniciada la descarga

      await bitbybit.babylon.io.exportMeshToStl({ mesh, fileName: "part" });
      
    • Descarga varias mallas, con sus mallas hijas, como un solo archivo STL; las líneas se omiten.

      Parameters

      Returns Promise<any>

      Un objeto vacío una vez iniciada la descarga

      await bitbybit.babylon.io.exportMeshesToStl({ meshes: [meshA, meshB], fileName: "parts" });
      

    load

    • Carga un modelo glTF, glb, STL u OBJ desde un File en la escena y devuelve una malla contenedora con las mallas del modelo como hijas; cualquier otra extensión lanza un error.

      Las mallas cargadas proyectan y reciben sombras y empiezan ocultas cuando hidden es true.

      Parameters

      • inputs: AssetFileDto

        El archivo del modelo y si empieza oculto

      Returns Promise<Mesh>

      La malla contenedora que alberga el modelo cargado

      const file = await bitbybit.asset.getFile({ fileName: "chair.glb" });
      const model = await bitbybit.babylon.io.loadAssetIntoScene({ assetFile: file, hidden: false });
    • Carga un modelo glTF, glb, STL u OBJ desde un File en la escena, como hace loadAssetIntoScene, sin devolver la malla.

      Parameters

      • inputs: AssetFileDto

        El archivo del modelo y si empieza oculto

      Returns Promise<void>

      const file = await bitbybit.asset.getFile({ fileName: "chair.glb" });
      await bitbybit.babylon.io.loadAssetIntoSceneNoReturn({ assetFile: file, hidden: false });
    • Carga un modelo glTF, glb, STL u OBJ desde una dirección web en la escena y devuelve una malla contenedora con las mallas del modelo como hijas.

      rootUrl es la carpeta y assetFile el nombre del archivo en ella, de modo que las texturas junto al modelo también se resuelven; el servidor debe permitir solicitudes de origen cruzado.

      Parameters

      • inputs: AssetFileByUrlDto

        La URL de la carpeta, el nombre del archivo y si empieza oculto

      Returns Promise<Mesh>

      La malla contenedora que alberga el modelo cargado

      const model = await bitbybit.babylon.io.loadAssetIntoSceneFromRootUrl({ rootUrl: "https://example.com/models/", assetFile: "chair.glb", hidden: false });
      
    • Carga un modelo desde una dirección web en la escena, como hace loadAssetIntoSceneFromRootUrl, sin devolver la malla.

      Parameters

      • inputs: AssetFileByUrlDto

        La URL de la carpeta, el nombre del archivo y si empieza oculto

      Returns Promise<void>

      await bitbybit.babylon.io.loadAssetIntoSceneFromRootUrlNoReturn({ rootUrl: "https://example.com/models/", assetFile: "chair.glb", hidden: false });
      
    • Carga un modelo glb guardado como bytes en la escena, como la salida de occt.io.convertStepToGltf, y devuelve una malla contenedora con las mallas del modelo como hijas.

      Parameters

      • inputs: AssetGlbDataDto

        Los bytes del glb, un nombre para el modelo y si empieza oculto

      Returns Promise<Mesh>

      La malla contenedora que alberga el modelo cargado

      const glb = await bitbybit.occt.io.convertStepToGltf({ stepData: file, meshPrecision: 0.005, meshAngle: 0.5, meshRelative: true, internalVerticesMode: false, controlSurfaceDeflection: false });
      const model = await bitbybit.babylon.io.loadGlbFromArrayBuffer({ glbData: glb, fileName: "part.glb", hidden: false });
    • Carga un modelo glb guardado como bytes en la escena, como hace loadGlbFromArrayBuffer, sin devolver la malla.

      Parameters

      • inputs: AssetGlbDataDto

        Los bytes del glb, un nombre para el modelo y si empieza oculto

      Returns Promise<void>

      await bitbybit.babylon.io.loadGlbFromArrayBufferNoReturn({ glbData: glb, fileName: "part.glb", hidden: false });