/** * Port of http://webglsamples.org/blob/blob.html */ import { BufferGeometry, Material, Mesh } from "three"; import type { TypedArray, NumberType } from "./types.js"; declare class MarchingCubes extends Mesh { isovalue: number; enableUvs: boolean; enableColors: boolean; enableNormals: boolean; dirty: boolean; resolution: [number, number, number]; stepSizeX: number; stepSizeY: number; stepSizeZ: number; sizeX: number; sizeY: number; sizeZ: number; sizeXY: number; sizeXYZ: number; size3: number; halfsizeX: number; halfsizeY: number; halfsizeZ: number; deltaX: number; deltaY: number; deltaZ: number; yd: number; zd: number; field: TypedArray; normal_cache: Float32Array; maxCount: number; count: number; hasPositions: boolean; hasNormals: boolean; hasColors: boolean; hasUvs: boolean; positionArray: Float32Array; normalArray: Float32Array; uvArray: Float32Array; colorArray: Float32Array; private init; private begin; private end; private reset; render: (renderCallback: (mc: MarchingCubes) => void) => void; generateGeometry: () => BufferGeometry[] | undefined; constructor(resolution: [number, number, number], material: Material, enableUvs: boolean, enableColors: boolean, enableNormals: boolean, volumeFieldRef: TypedArray); } declare const edgeTable: Int32Array; declare const triTable: Int32Array; export { MarchingCubes, edgeTable, triTable }; export default MarchingCubes;