Conjuntos de nubes de puntos

Un pcpointset es un conjunto ordenado de valores pcpoint distintos; un pcpatchset es el tipo de conjunto análogo para pcpatch. Ambos siguen la semántica general de conjuntos de MobilityDB (véase Capítulo 2, Tipos de conjunto y de rango): los valores se deduplicen en la construcción, la representación binaria es canónica, y todos los operadores genéricos a nivel de conjunto (=, <>, <, <=, >, >=, @>, <@, &&, +, -, *) y las funciones de acceso (numValues, memSize, asText, asEWKT, asBinary, asEWKB, asHexWKB, asHexEWKB, …) están disponibles (véase las representaciones binarias de un conjunto espacial). Las formas extendidas indican el SRID que el esquema del pcid declara en el catálogo pointcloud_formats, por lo que coinciden con las formas simples cuando ese esquema no declara ningún SRID.

Todos los valores de un conjunto deben compartir el mismo pcid. Mezclar esquemas en un único conjunto genera un error en el momento de la construcción.

Constructores

  • Construye un conjunto a partir de un array de valores, todos los cuales deben compartir el mismo pcid

    set(pcpoint[]) → pcpointset
    set(pcpatch[]) → pcpatchset
    
    SELECT numValues(set(ARRAY[pcpoint(1, 10.0, 20.0, 30.0),
      pcpoint(1, 10.0, 20.0, 30.0),  -- duplicate, deduped
      pcpoint(1, 11.0, 21.0, 31.0)]));
    -- 2