CREATE EXTENSION pointcloud; INSERT INTO pointcloud_formats (pcid, srid, schema) VALUES (1, 0, ' 1 4 X coordinate as a long integer. You must use the scale and offset information of the header to determine the double value. X int32_t 0.01 2 4 Y coordinate as a long integer. You must use the scale and offset information of the header to determine the double value. Y int32_t 0.01 3 4 Z coordinate as a long integer. You must use the scale and offset information of the header to determine the double value. Z int32_t 0.01 4 2 The intensity value is the integer representation of the pulse return magnitude. This value is optional and system specific. However, it should always be included if available. Intensity uint16_t 1 4326 ' ); CREATE TABLE IF NOT EXISTS pt_test ( pt PCPOINT ); DELETE FROM pt_test; INSERT INTO pt_test (pt) VALUES ('00000000010000000100000002000000030004'); INSERT INTO pt_test (pt) VALUES ('00000000010000000200000003000000030005'); INSERT INTO pt_test (pt) VALUES ('00000000010000000300000004000000030006'); SELECT PC_Get(pt, 'Intensity') FROM pt_test; pc_get -------- 4 5 6 (3 rows) SELECT Sum(PC_Get(pt, 'y')) FROM pt_test; sum ------ 0.09 (1 row) SELECT PC_AsText(pt) FROM pt_test; pc_astext ----------------------------- ( 1 : 0.01, 0.02, 0.03, 4 ) ( 1 : 0.02, 0.03, 0.03, 5 ) ( 1 : 0.03, 0.04, 0.03, 6 ) (3 rows) CREATE TABLE IF NOT EXISTS pa_test ( pa PCPATCH ); DELETE FROM pa_test; INSERT INTO pa_test (pa) VALUES ('0000000001000000000000000200000002000000030000000500060000000200000003000000050008'); INSERT INTO pa_test (pa) VALUES ('000000000100000000000000020000000600000007000000050006000000090000000A00000005000A'); SELECT PC_AsText(pa) FROM pa_test; pc_astext ------------------------------------------------------ [ 1 : (0.02, 0.03, 0.05, 6), (0.02, 0.03, 0.05, 8) ] [ 1 : (0.06, 0.07, 0.05, 6), (0.09, 0.1, 0.05, 10) ] (2 rows) SELECT PC_Envelope(pa) from pa_test; pc_envelope ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- \x010300000001000000050000007b14ae47e17a943fb81e85eb51b89e3f7b14ae47e17a943fb81e85eb51b89e3f7b14ae47e17a943fb81e85eb51b89e3f7b14ae47e17a943fb81e85eb51b89e3f7b14ae47e17a943fb81e85eb51b89e3f \x01030000000100000005000000b81e85eb51b8ae3fec51b81e85ebb13fb81e85eb51b8ae3f9a9999999999b93f0ad7a3703d0ab73f9a9999999999b93f0ad7a3703d0ab73fec51b81e85ebb13fb81e85eb51b8ae3fec51b81e85ebb13f (2 rows) SELECT PC_AsText(PC_Explode(PC_Patch(pt))) FROM pt_test; pc_astext ----------------------------- ( 1 : 0.01, 0.02, 0.03, 4 ) ( 1 : 0.02, 0.03, 0.03, 5 ) ( 1 : 0.03, 0.04, 0.03, 6 ) (3 rows) --DROP TABLE pt_test; --DROP TABLE pa_test;