Bitbybit Docs
    Preparing search index...

    Class Asset

    Файлы, входящие в скрипт и выходящие из него: ассеты, которые работающее приложение хранит под именем, файлы, загружаемые по URL, скачивания и конвертации между File, Blob, ArrayBuffer и Uint8Array. Приложение предоставляет поиск через assetManager, поэтому то, во что разрешается имя ассета, зависит от того, где выполняется скрипт; для загрузки нужен эндпоинт, разрешающий кросс-доменные запросы.

    Index

    Constructors

    Properties

    assetManager: AssetManager

    convert

    • Читает все байты File или Blob в ArrayBuffer, форму, которую принимают двоичные загрузчики и преобразователи STEP.

      Parameters

      • inputs: FileDto

        File или Blob для чтения

      Returns Promise<ArrayBuffer>

      Байты как ArrayBuffer

      const buffer = await bitbybit.asset.toArrayBuffer({ file });
      
    • Читает все байты File или Blob в Uint8Array, массив байтов, который можно индексировать и нарезать.

      Parameters

      • inputs: FileDto

        File или Blob для чтения

      Returns Promise<Uint8Array<ArrayBufferLike>>

      Байты как Uint8Array

      const bytes = await bitbybit.asset.toUint8Array({ file });
      
    • Оборачивает Blob в File с именем и типом MIME, что нужно загрузчикам, которым требуется имя файла; собственный тип Blob сохраняется, когда mimeType опущен.

      Parameters

      • inputs: BlobToFileDto

        Blob, имя файла и необязательный тип MIME

      Returns File

      File

      const file = bitbybit.asset.blobToFile({ blob, fileName: "part.step", mimeType: "application/step" });
      
    • Копирует байты File в простой Blob того же типа, отбрасывая имя; переданный Blob возвращается копией.

      Parameters

      • inputs: FileDto

        File или Blob для копирования

      Returns Blob

      Blob

      const blob = bitbybit.asset.fileToBlob({ file });
      
    • Представляет байты ArrayBuffer как Uint8Array; байты не копируются, оба разделяют одну память.

      Parameters

      Returns Uint8Array

      Uint8Array над теми же байтами

      const bytes = bitbybit.asset.arrayBufferToUint8Array({ arrayBuffer });
      
    • Копирует ровно те байты, которые покрывает Uint8Array, в новый ArrayBuffer, так что представление части большего буфера дает только свою часть.

      Parameters

      Returns ArrayBuffer

      Новый ArrayBuffer

      const buffer = bitbybit.asset.uint8ArrayToArrayBuffer({ uint8Array: bytes });
      

    create

    • Делает временный URL для File или Blob, хранящегося в памяти, чтобы его можно было передать всему, что загружает по URL, например текстуре или загрузчику моделей.

      URL живет столько, сколько живет страница.

      Parameters

      Returns string

      Временный URL

      const url = bitbybit.asset.createObjectURL({ file });
      
    • Делает временный URL для каждого File или Blob в списке, в том же порядке, как createObjectURL для одного.

      Parameters

      • inputs: FilesDto

        Объекты File или Blob

      Returns string[]

      По одному временному URL на файл, в том же порядке

      const urls = bitbybit.asset.createObjectURLs({ files: [fileA, fileB] });
      

    download

    • Запускает скачивание браузером заданного содержимого как файла с именем fileName плюс extension.

      Текстовое содержимое оборачивается в Blob типа contentType; Blob скачивается как есть.

      Parameters

      • inputs: DownloadDto

        Имя файла, содержимое, расширение и тип содержимого

      Returns void

      bitbybit.asset.download({ fileName: "points", content: "x,y,z\n1,2,3", extension: "csv", contentType: "text/csv" });
      

    fetch

    • Скачивает содержимое по URL как Blob, сырые байты без имени файла; сервер должен разрешать кросс-доменные запросы.

      Parameters

      • inputs: FetchDto

        URL для загрузки

      Returns Promise<Blob>

      Тело ответа как Blob

      const blob = await bitbybit.asset.fetchBlob({ url: "https://example.com/models/part.glb" });
      
    • Скачивает содержимое по URL как File, названный по последней части URL, без строки запроса; сервер должен разрешать кросс-доменные запросы.

      Parameters

      • inputs: FetchDto

        URL для загрузки

      Returns Promise<File>

      Тело ответа как File

      const file = await bitbybit.asset.fetchFile({ url: "https://example.com/models/part.step" });
      const shape = await bitbybit.occt.io.loadSTEPorIGES({ assetFile: file, adjustZtoY: true });
    • Скачивает содержимое по URL и разбирает его как JSON; сервер должен разрешать кросс-доменные запросы, а тело должно быть корректным JSON.

      Parameters

      • inputs: FetchDto

        URL для загрузки

      Returns Promise<any>

      Разобранное значение JSON

      const settings = await bitbybit.asset.fetchJSON({ url: "https://example.com/data/settings.json" });
      
    • Скачивает содержимое по URL как простой текст; сервер должен разрешать кросс-доменные запросы.

      Parameters

      • inputs: FetchDto

        URL для загрузки

      Returns Promise<string>

      Тело ответа как текст

      const csv = await bitbybit.asset.fetchText({ url: "https://example.com/data/points.csv" });
      

    get

    • Загружает именованный ресурс запущенного приложения как File, через поиск, который приложение предоставляет в assetManager.getAsset.

      В каком хранилище ищется имя, зависит от приложения; отсутствующий ресурс отклоняет промис.

      Parameters

      Returns Promise<File>

      Ассет как File

      const file = await bitbybit.asset.getFile({ fileName: "part.step" });
      const shape = await bitbybit.occt.io.loadSTEPorIGES({ assetFile: file, adjustZtoY: true });
    • Загружает именованный ресурс запущенного приложения и читает его как текст, для JSON, CSV или других текстовых файлов, хранящихся как ресурсы.

      Parameters

      Returns Promise<string>

      Содержимое ассета как текст

      const csv = await bitbybit.asset.getTextFile({ fileName: "points.csv" });
      const rows = bitbybit.csv.parseToArray({ csv, rowSeparator: "\n", columnSeparator: "," });
    • Загружает именованный локальный ресурс, хранящийся в браузере, а не на сервере, через поиск, который приложение предоставляет в assetManager.getLocalAsset.

      Имя, разрешающееся в несколько файлов, дает список.

      Parameters

      Returns Promise<File | File[]>

      Ассет как File или список File, если под именем хранится несколько

      const file = await bitbybit.asset.getLocalFile({ fileName: "part.step" });
      
    • Загружает именованный локальный ресурс, хранящийся в браузере, а не на сервере, и читает его как текст; имя, разрешающееся в несколько файлов, дает список текстов.

      Parameters

      Returns Promise<string | string[]>

      Содержимое как текст или список текстов, если под именем хранится несколько файлов

      const text = await bitbybit.asset.getLocalTextFile({ fileName: "settings.json" });