@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
27 lines (26 loc) • 958 B
TypeScript
import { Box3, Sphere } from 'three';
import { BaseCorePoint } from '../../geometry/entities/point/CorePoint';
export type OctreeNodeTraverseCallback = (node: OctreeNode) => void;
export declare class OctreeNode {
private _bbox;
private _level;
private _leavesByOctant;
private _pointsByOctantId;
private _leaves;
private _center;
private _boundingBoxesByOctant;
private _boundingBoxesByOctantPrepared;
constructor(_bbox: Box3, _level?: number);
level(): number;
traverse(callback: OctreeNodeTraverseCallback): void;
intersectsSphere(sphere: Sphere): boolean;
pointsInSphere(sphere: Sphere, accumulatedPoints: BaseCorePoint[]): void;
boundingBox(): Box3 | undefined;
setPoints(points: BaseCorePoint[]): void;
createLeaf(octantId: string): void;
addPoint(point: BaseCorePoint): void;
private _octantId;
private _leafBbox;
private _bboxCenter;
private _prepareLeavesBboxes;
}