Bitbybit Docs
    Preparing search index...

    Class BabylonIO

    تحميل النماذج إلى المشهد وتصديره: تدخل ملفات glTF و glb و STL و OBJ من كائن File أو عنوان URL أو بايتات glb خام كشبكة حاوية واحدة تحتها عناصرها الفرعية، ويخرج المشهد كله أو الشبكات المختارة كتنزيلات .babylon أو glb أو STL.

    Index

    Constructors

    export

    • ينزّل المشهد كاملًا كملف .babylon، وهو تنسيق JSON الخاص بالمحرك الذي تقرؤه محرراته ومحمّلاته؛ يُضاف الامتداد عند غيابه.

      Parameters

      Returns void

      bitbybit.babylon.io.exportBabylon({ fileName: "my-scene" });
      
    • ينزّل المشهد كاملًا كملف glb، وهو glTF الثنائي الذي تقرؤه معظم أدوات 3D وعارضات الويب؛ discardSkyboxAndGrid يستبعد صندوق السماء والأرضية اللذين تضيفهما هذه المكتبة.

      Parameters

      • inputs: ExportSceneGlbDto

        اسم الملف وما إذا كان يستثني صندوق السماء والأرضية

      Returns void

      bitbybit.babylon.io.exportGLB({ fileName: "my-scene", discardSkyboxAndGrid: true });
      
    • يكتب المشهد كاملًا، أو العقد المختارة مع أسلافها، كبايتات glb دون تنزيل أي شيء، بحيث يمكن حفظها أو تمريرها أو إعادة تحميلها عبر loadGlbFromArrayBuffer.

      يُكتب كل سلف لعقدة مختارة أيضًا، لكي تحافظ الهندسة على موضعها، ويحمل الملف المواد التي تملكها الشبكات لحظة الاستدعاء.

      Parameters

      • inputs: ExportSceneGlbBytesDto

        العقد المراد كتابتها، وما إذا كان يستثنى صندوق السماء والأرضية، وما إذا كان يُضغط بواسطة Draco

      Returns Promise<Uint8Array<ArrayBufferLike>>

      ملف glb كبايتات

      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 });
    • ينزّل شبكة وشبكاتها الفرعية المرئية كملف STL واحد، وهو تنسيق المثلثات البسيط الذي تأخذه الطابعات ثلاثية الأبعاد؛ تُستبعد الخطوط.

      Parameters

      Returns Promise<any>

      كائن فارغ بمجرد بدء التنزيل

      await bitbybit.babylon.io.exportMeshToStl({ mesh, fileName: "part" });
      
    • ينزّل عدة شبكات، مع شبكاتها الفرعية، كملف STL واحد؛ تُستبعد الخطوط.

      Parameters

      Returns Promise<any>

      كائن فارغ بمجرد بدء التنزيل

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

    load

    • يحمّل نموذج glTF أو glb أو STL أو OBJ من ملف إلى المشهد ويعيد شبكة حاوية تضم شبكات النموذج كفروع لها؛ أي امتداد آخر يرمي خطأ.

      الشبكات المحمّلة تلقي الظلال وتستقبلها وتبدأ مخفية عندما يكون hidden صحيحًا.

      Parameters

      • inputs: AssetFileDto

        ملف النموذج وما إذا كان يبدأ مخفيا

      Returns Promise<Mesh>

      الشبكة الحاوية التي تحمل النموذج المحمّل

      const file = await bitbybit.asset.getFile({ fileName: "chair.glb" });
      const model = await bitbybit.babylon.io.loadAssetIntoScene({ assetFile: file, hidden: false });
    • يحمّل نموذج glTF أو glb أو STL أو OBJ من ملف إلى المشهد، كما يفعل loadAssetIntoScene، من دون إعادة الشبكة.

      Parameters

      • inputs: AssetFileDto

        ملف النموذج وما إذا كان يبدأ مخفيا

      Returns Promise<void>

      const file = await bitbybit.asset.getFile({ fileName: "chair.glb" });
      await bitbybit.babylon.io.loadAssetIntoSceneNoReturn({ assetFile: file, hidden: false });
    • يحمّل نموذج glTF أو glb أو STL أو OBJ من عنوان ويب إلى المشهد ويعيد شبكة حاوية تضم شبكات النموذج كفروع لها.

      rootUrl هو المجلد وassetFile اسم الملف فيه، بحيث تُحل الأنسجة المجاورة للنموذج أيضًا؛ يجب أن يسمح الخادم بالطلبات عبر الأصول المختلفة.

      Parameters

      • inputs: AssetFileByUrlDto

        عنوان URL للمجلد واسم الملف وما إذا كان يبدأ مخفيا

      Returns Promise<Mesh>

      الشبكة الحاوية التي تحمل النموذج المحمّل

      const model = await bitbybit.babylon.io.loadAssetIntoSceneFromRootUrl({ rootUrl: "https://example.com/models/", assetFile: "chair.glb", hidden: false });
      
    • يحمّل نموذجًا من عنوان ويب إلى المشهد، كما يفعل loadAssetIntoSceneFromRootUrl، من دون إعادة الشبكة.

      Parameters

      • inputs: AssetFileByUrlDto

        عنوان URL للمجلد واسم الملف وما إذا كان يبدأ مخفيا

      Returns Promise<void>

      await bitbybit.babylon.io.loadAssetIntoSceneFromRootUrlNoReturn({ rootUrl: "https://example.com/models/", assetFile: "chair.glb", hidden: false });
      
    • يحمّل نموذج glb محفوظًا كبايتات إلى المشهد، مثل مخرجات occt.io.convertStepToGltf، ويعيد شبكة حاوية تضم شبكات النموذج كفروع لها.

      Parameters

      • inputs: AssetGlbDataDto

        بايتات ملف glb واسم للنموذج وما إذا كان يبدأ مخفيا

      Returns Promise<Mesh>

      الشبكة الحاوية التي تحمل النموذج المحمّل

      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 });
    • يحمّل نموذج glb محفوظًا كبايتات إلى المشهد، كما يفعل loadGlbFromArrayBuffer، من دون إعادة الشبكة.

      Parameters

      • inputs: AssetGlbDataDto

        بايتات ملف glb واسم للنموذج وما إذا كان يبدأ مخفيا

      Returns Promise<void>

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