UNPKG

b3dm

Version:

A TypeScript library for parsing and building B3DM (Batched 3D Model) files

50 lines (45 loc) 1.33 kB
/** B3DM 文件头结构(共28字节) */ interface B3dmHeader { magic: string; version: number; byteLength: number; featureTableJSONByteLength: number; featureTableBinaryByteLength: number; batchTableJSONByteLength: number; batchTableBinaryByteLength: number; } /** B3DM 完整数据结构 */ interface B3dmData { header: B3dmHeader; featureTable: { json: Record<string, any>; binary?: Uint8Array; }; batchTable?: { json: Record<string, any>; binary?: Uint8Array; }; glbData: Uint8Array; } /** 构建B3DM的选项 */ interface B3dmBuildOptions { glbData: Uint8Array; featureTableJSON?: Record<string, any>; featureTableBinary?: Uint8Array; batchTableJSON?: Record<string, any>; batchTableBinary?: Uint8Array; } /** * 解析B3DM二进制数据 * @param arrayBuffer B3DM文件的ArrayBuffer * @returns 解析后的B3DM数据结构 */ declare function parseB3dm(arrayBuffer: ArrayBuffer): B3dmData; /** * 构建B3DM二进制数据 * @param options 构建选项(包含GLB和元数据) * @returns B3DM的ArrayBuffer */ declare function buildB3dm(options: B3dmBuildOptions): ArrayBuffer; declare const version: any; export { type B3dmBuildOptions, type B3dmData, type B3dmHeader, buildB3dm, parseB3dm, version };