UNPKG

itowns

Version:

A JS/WebGL framework for 3D geospatial data visualization

69 lines (68 loc) 2.83 kB
export default CopcNode; /** * @extends PointCloudNode * * @property {boolean} isCopcNode - Used to checkout whether this * node is a CopcNode. Default is `true`. You should not change * this, as it is used internally for optimisation. * @property {number} entryOffset - Offset from the beginning of the file of * the node entry * @property {number} entryLength - Size of the node entry * @property {CopcLayer} layer - COPC layer the node belongs to. * @property {number} depth - Depth within the octree * @property {number} x - X position within the octree * @property {number} y - Y position within the octree * @property {number} z - Z position within the octree * @property {string} voxelKey - The id of the node, constituted of the four * components: `depth-x-y-z`. */ declare class CopcNode extends PointCloudNode { /** * Constructs a new instance of a COPC Octree node * * @param {number} depth - Depth within the octree * @param {number} x - X position within the octree * @param {number} y - Y position within the octree * @param {number} z - Z position with the octree * @param {number} entryOffset - Offset from the beginning of the file to * the node entry * @param {number} entryLength - Size of the node entry * @param {CopcLayer} layer - Parent COPC layer * @param {number} [numPoints=0] - Number of points given by this entry */ constructor(depth: number, x: number, y: number, z: number, entryOffset: number, entryLength: number, layer: CopcLayer, numPoints?: number); isCopcNode: boolean; entryOffset: number; entryLength: number; depth: number; x: number; y: number; z: number; voxelKey: string; get octreeIsLoaded(): boolean; get id(): string; /** * @param {number} offset * @param {number} size */ _fetch(offset: number, size: number): Promise<any>; loadOctree(): Promise<undefined>; /** * Create a CopcNode from the provided subtree and add it as child * of the current node. * @param {number} depth - Child node depth in the octree * @param {number} x - Child node x position in the octree * @param {number} y - Child node y position in the octree * @param {number} z - Child node z position in the octree * @param {Hierarchy.Subtree} hierarchy - Octree's subtree * @param {CopcNode[]} stack - Stack of node candidates for traversal */ findAndCreateChild(depth: number, x: number, y: number, z: number, hierarchy: Hierarchy.Subtree, stack: CopcNode[]): void; /** * Load the COPC Buffer geometry for this node. * @returns {Promise<THREE.BufferGeometry>} */ load(): Promise<THREE.BufferGeometry>; } import PointCloudNode from '../Core/PointCloudNode'; import { Hierarchy } from 'copc';