UNPKG

videx-3d

Version:

React 3D component library designed for sub surface visualizations in the browser

47 lines (46 loc) 2.45 kB
import { BufferGeometry, TypedArray } from 'three'; export type BufferAttributeDrawRange = { start: number; count: number; }; export type BufferAttributeGroups = (BufferAttributeDrawRange & { materialIndex?: number | undefined; })[]; export type BufferAttributeLike = { array: TypedArray; itemSize: number; }; export type BufferGeometryLike = { [index: string]: any; drawRange?: BufferAttributeDrawRange | undefined; groups?: BufferAttributeGroups | undefined; attributes: Record<string, BufferAttributeLike>; index?: ArrayBufferLike | undefined; userData?: any; }; export type PackedBufferAttribute = { buffer: ArrayBufferLike; attributeType: string; itemSize: number; }; export type PackedAttributes = Record<string, PackedBufferAttribute>; export type PackedBufferGeometry = { drawRange: BufferAttributeDrawRange; groups: BufferAttributeGroups; attributes: PackedAttributes; index: ArrayBufferLike | undefined; indexType: string | undefined; userData?: any; }; export type PackedBufferGeometryCollection = Record<string, PackedBufferGeometry>; export declare function getTypedArrayType(array: ArrayBufferLike): "Int8Array" | "Float32Array" | "Uint8Array" | "Int16Array" | "Uint16Array" | "Int32Array" | "Uint32Array" | "Float64Array"; export declare function getTypedArrayFromBuffer(buffer: ArrayBufferLike, type: string): Float32Array<ArrayBufferLike> | Int8Array<ArrayBufferLike> | Uint8Array<ArrayBufferLike> | Int16Array<ArrayBufferLike> | Uint16Array<ArrayBufferLike> | Int32Array<ArrayBufferLike> | Uint32Array<ArrayBufferLike> | Float64Array<ArrayBufferLike>; export declare function packAttribute(typedArray: TypedArray, itemSize?: number): PackedBufferAttribute; export declare function packBufferGeometryLike(geometry: BufferGeometryLike): [PackedBufferGeometry, ArrayBufferLike[]]; export declare function packBufferGeometry(bufferGeometry: BufferGeometry): [PackedBufferGeometry, ArrayBufferLike[]]; export declare function packBufferGeometries(bufferGeometries: BufferGeometry[]): { data: PackedBufferGeometryCollection; transferrables: ArrayBufferLike[]; }; export declare function unpackBufferGeometry(packed: PackedBufferGeometry): BufferGeometry<import('three').NormalBufferAttributes>; export declare function unpackBufferGeometries(data: PackedBufferGeometryCollection): Record<string, BufferGeometry<import('three').NormalBufferAttributes>>;