UNPKG

@giro3d/giro3d

Version:

A JS/WebGL framework for 3D geospatial data visualization

40 lines 2.03 kB
import type { Dimension } from 'copc'; import type { Box3 } from 'three'; import type { PointCloudAttribute } from '../PointCloudSource'; import type { DimensionFilter } from './filter'; export type DimensionName = 'X' | 'Y' | 'Z' | 'Intensity' | 'ReturnNumber' | 'NumberOfReturns' | 'ScanDirectionFlag' | 'EdgeOfFlightLine' | 'Classification' | 'ScanAngle' | 'ScanAngleRank' | 'Red' | 'Green' | 'Blue' | 'UserData' | 'ScannerChannel' | 'PointSourceId' | 'Infrared' | 'ScanChannel' | 'ScannerChannel' | 'GpsTime'; /** * Default min/max values for various LAS dimensions. Most default values are directly dependent on * the data type of the dimension (e.g a `Uint8` dimensions will have a default range of 0-255), but * some dimensions have narrower min/max, for example `ScanAngle`: * * ```js * // Get the default min/max for return number * const { min, max } = DEFAULT_VALUE_RANGES['ReturnNumber']; * // { min: 0, max: 8 } * ``` * @internal */ export declare const DEFAULT_VALUE_RANGES: Record<DimensionName, { min?: number; max?: number; }>; /** * Extracts attributes from LAS dimensions. * @internal */ export declare function extractAttributes(dimensions: Dimension.Map, volume: Box3, compressColors: boolean, gpsTimeRange: [number, number] | null): PointCloudAttribute[]; /** * Return all the dimensions that we expect to read from a given view. The dimensions are the union * of the required dimensions (the X, Y, Z dimension), the optional requested attribute, and all the * dimensions that are concerned by filters, if any. * * For example: if we want to read intensities, but exclude some classifications and GPS time, we * have to read dimensions: * - `X`, `Y`, `Z` for the point position, * - `Intensity` for the requested attribute * - `Classification` and `GpsTime` for filtering. * @internal */ export declare function getDimensionsToRead(attributes: PointCloudAttribute[], readPosition: boolean, filters: DimensionFilter[]): DimensionName[]; //# sourceMappingURL=dimension.d.ts.map