Bitbybit Docs
    Preparing search index...

    Class BabylonIO

    Charger des modèles dans la scène et l'exporter : les fichiers glTF, glb, STL et OBJ arrivent depuis un File, une URL ou des octets glb bruts sous forme d'un maillage conteneur avec leurs enfants dessous, et la scène entière ou les maillages choisis sortent en téléchargements .babylon, glb ou STL.

    Index

    Constructors

    export

    • Télécharge toute la scène sous forme de fichier .babylon, le format JSON propre du moteur que ses éditeurs et chargeurs relisent ; l'extension est ajoutée quand elle manque.

      Parameters

      Returns void

      bitbybit.babylon.io.exportBabylon({ fileName: "my-scene" });
      
    • Télécharge toute la scène sous forme de fichier glb, le glTF binaire que la plupart des outils 3D et des visionneuses web lisent ; discardSkyboxAndGrid exclut la skybox et le sol que cette bibliothèque ajoute.

      Parameters

      Returns void

      bitbybit.babylon.io.exportGLB({ fileName: "my-scene", discardSkyboxAndGrid: true });
      
    • Écrit toute la scène, ou les noeuds choisis avec leurs ancêtres, sous forme d'octets glb sans rien télécharger, pour qu'ils puissent être enregistrés, transmis ou rechargés avec loadGlbFromArrayBuffer.

      Chaque ancêtre d'un noeud choisi est écrit aussi, pour que la géométrie garde sa place, et le fichier porte les matériaux que les maillages ont au moment de l'appel.

      Parameters

      • inputs: ExportSceneGlbBytesDto

        Les noeuds à écrire, s'il faut exclure la skybox et le sol, et s'il faut compresser avec Draco

      Returns Promise<Uint8Array<ArrayBufferLike>>

      Le fichier glb sous forme d'octets

      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 });
    • Télécharge un maillage et ses maillages enfants visibles en un seul fichier STL, le format de triangles simple que les imprimantes 3D acceptent ; les lignes sont exclues.

      Parameters

      Returns Promise<any>

      Un objet vide une fois le téléchargement lancé

      await bitbybit.babylon.io.exportMeshToStl({ mesh, fileName: "part" });
      
    • Télécharge plusieurs maillages, avec leurs maillages enfants, en un seul fichier STL ; les lignes sont exclues.

      Parameters

      Returns Promise<any>

      Un objet vide une fois le téléchargement lancé

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

    load

    • Charge un modèle glTF, glb, STL ou OBJ depuis un File dans la scène et renvoie un maillage conteneur avec les maillages du modèle comme enfants ; toute autre extension lève une erreur.

      Les maillages chargés projettent et reçoivent les ombres et démarrent masqués quand hidden est vrai.

      Parameters

      • inputs: AssetFileDto

        Le fichier du modèle et s'il démarre masqué

      Returns Promise<Mesh>

      Le maillage conteneur qui porte le modèle chargé

      const file = await bitbybit.asset.getFile({ fileName: "chair.glb" });
      const model = await bitbybit.babylon.io.loadAssetIntoScene({ assetFile: file, hidden: false });
    • Charge un modèle glTF, glb, STL ou OBJ depuis un File dans la scène, comme le fait loadAssetIntoScene, sans renvoyer le maillage.

      Parameters

      • inputs: AssetFileDto

        Le fichier du modèle et s'il démarre masqué

      Returns Promise<void>

      const file = await bitbybit.asset.getFile({ fileName: "chair.glb" });
      await bitbybit.babylon.io.loadAssetIntoSceneNoReturn({ assetFile: file, hidden: false });
    • Charge un modèle glTF, glb, STL ou OBJ depuis une adresse web dans la scène et renvoie un maillage conteneur avec les maillages du modèle comme enfants.

      rootUrl est le dossier et assetFile le nom du fichier qu'il contient, de sorte que les textures à côté du modèle se résolvent aussi ; le serveur doit autoriser les requêtes cross-origin.

      Parameters

      • inputs: AssetFileByUrlDto

        L'URL du dossier, le nom du fichier et s'il démarre masqué

      Returns Promise<Mesh>

      Le maillage conteneur qui porte le modèle chargé

      const model = await bitbybit.babylon.io.loadAssetIntoSceneFromRootUrl({ rootUrl: "https://example.com/models/", assetFile: "chair.glb", hidden: false });
      
    • Charge un modèle depuis une adresse web dans la scène, comme le fait loadAssetIntoSceneFromRootUrl, sans renvoyer le maillage.

      Parameters

      • inputs: AssetFileByUrlDto

        L'URL du dossier, le nom du fichier et s'il démarre masqué

      Returns Promise<void>

      await bitbybit.babylon.io.loadAssetIntoSceneFromRootUrlNoReturn({ rootUrl: "https://example.com/models/", assetFile: "chair.glb", hidden: false });
      
    • Charge un modèle glb contenu dans des octets dans la scène, comme la sortie de occt.io.convertStepToGltf, et renvoie un maillage conteneur avec les maillages du modèle comme enfants.

      Parameters

      • inputs: AssetGlbDataDto

        Les octets du glb, un nom pour le modèle et s'il démarre masqué

      Returns Promise<Mesh>

      Le maillage conteneur qui porte le modèle chargé

      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 });
    • Charge un modèle glb contenu dans des octets dans la scène, comme le fait loadGlbFromArrayBuffer, sans renvoyer le maillage.

      Parameters

      • inputs: AssetGlbDataDto

        Les octets du glb, un nom pour le modèle et s'il démarre masqué

      Returns Promise<void>

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