UNPKG

gis-tools-ts

Version:

A collection of geospatial tools primarily designed for WGS84, Web Mercator, and S2.

415 lines 14.5 kB
import type { LASFormat, LASHeader, VectorPointM } from '../../..'; /** * @param input - 30bits input * @returns - parsed to a LASpoint14 output */ export declare function modifyPoint14RawInput(input: DataView): DataView; /** Base class for common data manipulation */ export declare class CopyDataView { readonly data: DataView; /** @param data - the data to manipulate */ constructor(data: DataView); /** * @param data - the data to copy from * @param length - the length to copy */ copyFrom(data: DataView, length: number): void; /** * @param item - the data to copy to * @param length - the length to copy */ copyTo(item: DataView, length: number): void; } /** * Point 1.0 Internal manipulation tool * [Reference](https://github.com/LASzip/LASzip/blob/658d03825b221fab91ddf4571439724fda930191/src/lasreaditemcompressed_v1.cpp#L44) * The struct form: * ```cpp * struct LASpoint10 * { * I32 x; * I32 y; * I32 z; * U16 intensity; * U8 return_number : 3; * U8 number_of_returns_of_given_pulse : 3; * U8 scan_direction_flag : 1; * U8 edge_of_flight_line : 1; * U8 classification; * I8 scan_angle_rank; * U8 user_data; * U16 point_source_ID; * }; * ``` */ export declare class LASpoint10 extends CopyDataView { /** @param data - 20 bytes */ constructor(data?: DataView); /** * Modify the vector point given the input data and header * @param data - the raw data * @param header - the las header * @param point - the vector point to modify */ static rawToVectorPoint(data: DataView, header: LASHeader, point: VectorPointM<LASFormat>): void; /** @returns the I32 at x position */ get x(): number; /** set an I32 at x position */ set x(value: number); /** @returns the I32 at y position */ get y(): number; /** set an I32 at y position */ set y(value: number); /** @returns the I32 at z position */ get z(): number; /** set an I32 at z position */ set z(value: number); /** @returns the U16 at intensity position */ get intensity(): number; /** set an U16 at intensity position */ set intensity(value: number); /** @returns the U8 at flags position */ get flags(): number; /** @returns the return number flag */ get returnNumber(): number; /** @returns the number of returns flag */ get numberOfReturns(): number; /** @returns the scan direction flag */ get scanDirectionFlag(): number; /** @returns the edge of flight line flag */ get edgeOfFlightLine(): number; /** set an U8 at flags position */ set flags(value: number); /** @returns the U8 at class position */ get class(): number; /** @returns the isSynthetic flag */ get isSynthetic(): boolean; /** @returns the isKeyPoint flag */ get isKeyPoint(): boolean; /** @returns the isWithheld flag */ get isWithheld(): boolean; /** set an U8 at class position */ set class(value: number); /** @returns the I8 at scan angle rank */ get scanAngleRank(): number; /** set an I8 at scan angle rank */ set scanAngleRank(value: number); /** @returns the U8 at user data position */ get userData(): number; /** set an U8 at user data position */ set userData(value: number); /** @returns the U16 at point source ID position */ get pointSourceID(): number; /** set an U16 at point source ID position */ set pointSourceID(value: number); } /** LAS 1.0 RGBA Point data. Each color channel is 2 bytes. */ export declare class LASrgba extends CopyDataView { /** @param data - 6 bytes (2 bytes each for R, G, B) */ constructor(data?: DataView); /** * Modify the vector point given the input data * @param data - the raw data * @param point - the vector point to modify */ static rawToVectorPoint(data: DataView, point: VectorPointM<LASFormat>): void; /** @returns the U16 red position */ get r(): number; /** set an U16 red position */ set r(value: number); /** @returns the U16 green position */ get g(): number; /** set an U16 green position */ set g(value: number); /** @returns the U16 blue position */ get b(): number; /** set an U16 blue position */ set b(value: number); } /** LAS 1.0 RGBA Point data. Each color channel is 2 bytes. */ export declare class LASrgbaNir extends LASrgba { /** @param data - 8 bytes (2 bytes each for R, G, B, and NIR) */ constructor(data?: DataView); /** * Modify the vector point given the input data * @param data - the raw data * @param point - the vector point to modify */ static rawToVectorPoint(data: DataView, point: VectorPointM<LASFormat>): void; /** @returns the U16 blue position */ get nir(): number; /** set an U16 blue position */ set nir(value: number); } /** LAS 1.0 Wave Packet. Each wave packet is 29 bytes. */ export declare class LASWavePacket13 extends CopyDataView { /** @param data - 29 */ constructor(data?: DataView); /** * Modify the vector point given the input data * @param data - the raw data * @param point - the vector point to modify */ static rawToVectorPoint(data: DataView, point: VectorPointM<LASFormat>): void; /** @returns - the index */ get index(): number; /** set the index */ set index(value: number); /** @returns the offset */ get offset(): number; /** set an offset */ set offset(value: number | bigint); /** @returns the packet size */ get packetSize(): number; /** set an packet size */ set packetSize(value: number); /** @returns the return point */ get returnPoint(): number; /** set an return point */ set returnPoint(value: number); /** @returns the x */ get x(): number; /** set an x */ set x(value: number); /** @returns the y */ get y(): number; /** set an y */ set y(value: number); /** @returns the z */ get z(): number; /** set an z */ set z(value: number); } /** * LAS Internal Temp Point Format 1.4 * The struct form: * ```cpp * typedef struct LAStempReadPoint14 { * I32 X; * I32 Y; * I32 Z; * U16 intensity; * U8 return_number : 4; * U8 number_of_returns : 4; * U8 classification_flags : 4; * U8 scanner_channel : 2; * U8 scan_direction_flag : 1; * U8 edge_of_flight_line : 1; * U8 classification; * U8 user_data; * I16 scan_angle; * U16 point_source_ID; * }; * ``` */ export declare class LAStempReadPoint14 extends CopyDataView { /** @param data - 22 bytes */ constructor(data?: DataView); /** @returns the I32 at x position */ get x(): number; /** @returns the I32 at y position */ get y(): number; /** @returns the I32 at z position */ get z(): number; /** @returns the U16 at intensity position */ get intensity(): number; /** @returns the U8 at returnNumber position */ get returnNumber(): number; /** @returns the U8 at numberOfReturns position */ get numberOfReturns(): number; /** @returns the U8 at classificationFlags position */ get classificationFlags(): number; /** @returns the U8 at scannerChannel position */ get scannerChannel(): number; /** @returns the U8 at scanDirectionFlag position */ get scanDirectionFlag(): number; /** @returns the U8 at edgeOfFlightLine position */ get edgeOfFlightLine(): number; /** @returns the U8 at classification position */ get classification(): number; /** @returns the U8 at userData position */ get userData(): number; /** @returns the I16 at scanAngle position */ get scanAngle(): number; /** @returns the U16 at pointSourceID position */ get pointSourceID(): number; } /** * LAS Internal Point Format 1.4 * The struct form: * ```cpp * typedef struct LASpoint14 { * I32 X; * I32 Y; * I32 Z; * U16 intensity; * U8 legacy_return_number : 3; * U8 legacy_number_of_returns : 3; * U8 scan_direction_flag : 1; * U8 edge_of_flight_line : 1; * * U8 legacy_classification : 5; * U8 legacy_flags : 3; * I8 legacy_scan_angle_rank; * U8 user_data; * U16 point_source_ID; * // LAS 1.4 only * I16 scan_angle; * U8 legacy_point_type : 2; * U8 scanner_channel : 2; * U8 classification_flags : 4; * U8 classification; * U8 return_number : 4; * U8 number_of_returns : 4; * // LASlib internal use only * U8 deleted_flag; * // for 8 byte alignment of the GPS time * U8 dummy[2]; * // compressed LASzip 1.4 points only * BOOL gps_time_change; * F64 gps_time; * U16 rgb[4]; * LASwavepacket wavepacket; * } LASpoint14; * ``` */ export declare class LASpoint14 extends CopyDataView { /** @param data - 45 bytes */ constructor(data?: DataView); /** * Modify the vector point given the input data and header * @param data - the raw data * @param header - the las header * @param point - the vector point to modify */ static rawToVectorPoint(data: DataView, header: LASHeader, point: VectorPointM<LASFormat>): void; /** @returns the I32 at x position */ get x(): number; /** set an I32 at x position */ set x(value: number); /** @returns the I32 at y position */ get y(): number; /** set an I32 at y position */ set y(value: number); /** @returns the I32 at z position */ get z(): number; /** set an I32 at z position */ set z(value: number); /** @returns the U16 at intensity position */ get intensity(): number; /** set an U16 at intensity position */ set intensity(value: number); /** @returns the U8 at first flags position */ get flags1(): number; /** @returns the U8 at legacy return number position */ get legacyReturnNumber(): number; /** set an U8 at legacy return number position */ set legacyReturnNumber(value: number); /** @returns the U8 at legacy number of returns position */ get legacyNumberOfReturns(): number; /** set an U8 at legacy number of returns position */ set legacyNumberOfReturns(value: number); /** @returns the U8 at scan direction flag position */ get scanDirectionFlag(): number; /** set an U8 at scan direction flag position */ set scanDirectionFlag(value: number); /** @returns the U8 at edge of flight line position */ get edgeOfFlightLine(): number; /** set an U8 at edge of flight line position */ set edgeOfFlightLine(value: number); /** set an U8 at first flags position */ set flags1(value: number); /** @returns the U8 at second flags position */ get flags2(): number; /** @returns the U8 at legacy classification position */ get legacyClassification(): number; /** @returns the isSynthetic flag */ get isSynthetic(): boolean; /** @returns the isKeyPoint flag */ get isKeyPoint(): boolean; /** @returns the isWithheld flag */ get isWithheld(): boolean; /** set an U8 at legacy classification position */ set legacyClassification(value: number); /** @returns the U8 at legacy flags position */ get legacyFlags(): number; /** set an U8 at legacy flags position */ set legacyFlags(value: number); /** set an U8 at second flags position */ set flags2(value: number); /** @returns the I8 at legacy scan angle rank position */ get legacyScanAngleRank(): number; /** set an I8 at legacy scan angle rank position */ set legacyScanAngleRank(value: number); /** @returns the U8 at user data position */ get userData(): number; /** set an U8 at user data position */ set userData(value: number); /** @returns the U16 at point source ID position */ get pointSourceID(): number; /** set an U16 at point source ID position */ set pointSourceID(value: number); /** @returns the I16 at scan angle position */ get scanAngle(): number; /** set an I16 at scan angle position */ set scanAngle(value: number); /** @returns the U8 at third flags position */ get flags3(): number; /** @returns the U8 at legacy point type position */ get legacyPointType(): number; /** @returns the U8 at scanner channel position */ get scannerChannel(): number; /** set an U8 at scanner channel position */ set scannerChannel(value: number); /** @returns the U8 at classification flags position */ get classificationFlags(): number; /** set an U8 at classification flags position */ set classificationFlags(value: number); /** set an U8 at third flags position */ set flags3(value: number); /** @returns the U8 at classification position */ get classification(): number; /** set an U8 at classification position */ set classification(value: number); /** @returns the U8 at fourth flags position */ get flags4(): number; /** @returns the U8 at return number position */ get returnNumber(): number; /** set an U8 at return number position */ set returnNumber(value: number); /** @returns the U8 at number of returns position */ get numberOfReturns(): number; /** set an U8 at return number position */ set numberOfReturns(value: number); /** set an U8 at fourth flags position */ set flags4(value: number); /** @returns the U8 at deleted flag position */ get deletedFlag(): number; /** set an U8 at deleted flag position */ set deletedFlag(value: number); /** @returns the U8 at dummy position */ get dummy(): number; /** set an U8 at dummy position */ set dummy(value: number); /** @returns the BOOL at gps time change position */ get gpsTimeChange(): number; /** set an BOOL at gps time change position */ set gpsTimeChange(value: number); /** @returns the F64 at gps time position */ get gpsTime(): number; /** set an F64 at gps time position */ set gpsTime(value: number); /** @returns the U16 red position */ get r(): number; /** set an U16 red position */ set r(value: number); /** @returns the U16 green position */ get g(): number; /** set an U16 green position */ set g(value: number); /** @returns the U16 blue position */ get b(): number; /** set an U16 blue position */ set b(value: number); } //# sourceMappingURL=items.d.ts.map