@speckle/viewer
Version:
A 3d viewer for Speckle, based on threejs.
30 lines (29 loc) • 1.41 kB
TypeScript
import { Material, Box3, BufferAttribute, Points, BufferGeometry } from 'three';
import { NodeRenderView } from '../tree/NodeRenderView.js';
import { type BatchUpdateRange, type DrawGroup, GeometryType } from './Batch.js';
import { PrimitiveBatch } from './PrimitiveBatch.js';
import { DrawRanges } from './DrawRanges.js';
export declare class PointBatch extends PrimitiveBatch {
protected primitive: Points;
protected drawRanges: DrawRanges;
get geometryType(): GeometryType;
get bounds(): Box3;
get minDrawCalls(): number;
get triCount(): number;
get pointCount(): number;
get lineCount(): number;
constructor(id: string, subtreeId: string, renderViews: NodeRenderView[]);
setDrawRanges(ranges: BatchUpdateRange[]): void;
resetDrawRanges(): void;
protected getCurrentIndexBuffer(): BufferAttribute;
protected getNextIndexBuffer(): BufferAttribute;
protected shuffleMaterialOrder(a: DrawGroup, b: DrawGroup): number;
protected updateGradientIndexBufferData(start: number, end: number, value: number): {
minIndex: number;
maxIndex: number;
};
buildBatch(): Promise<void>;
protected makePointGeometry(index: Uint32Array | Uint16Array, position: Float64Array | Float32Array, color: Float32Array): BufferGeometry;
getRenderView(index: number): NodeRenderView | null;
getMaterialAtIndex(index: number): Material | null;
}