Temporal Point Clouds

Static Types pcpoint and pcpatch

Constructors

  • pcpoint: Build a 2D or 3D pcpoint from x/y(/z) coordinates

  • pcpatch: Build a pcpatch from a variadic list of pcpoints

Accessors

  • pcid: Return the schema id of a pcpoint or pcpatch

  • getX, getY, getZ: Return a coordinate of a pcpoint

  • getDim: Return any named dimension of a pcpoint

  • SRID: Return the spatial reference identifier of a pcpoint or pcpatch

Set Types pcpointset and pcpatchset

Constructors

  • set: Construct a set from an array of pcpoint or pcpatch values sharing the same pcid

Bounding Box tpcbox

Constructors

Conversions

  • tpcbox(pcpoint): Convert a pcpoint to a degenerate (zero-extent) tpcbox

  • tpcbox(pcpatch): Convert a pcpatch to a tpcbox using the patch's embedded PCBOUNDS

Accessors

Transformations

  • round: Return a tpcbox with coordinates rounded to a given number of decimal digits

  • setSRID: Return a tpcbox with the SRID overwritten

Set Operations

Topological Operators

  • &&: Return true if two tpcboxes overlap

  • @>: Return true if the first tpcbox contains the second

  • <@: Return true if the first tpcbox is contained in the second

  • ~=: Return true if two tpcboxes are exactly equal

  • -|-: Return true if two tpcboxes are adjacent

Position Operators

Comparisons

Temporal Type tpcpoint

Input and Output

Constructors

  • tpcpoint: Construct a temporal pcpoint of instant subtype

  • tpcpointSeq: Construct a temporal pcpoint of sequence subtype

  • tpcpointSeqSet: Construct a temporal pcpoint of sequence-set subtype

Accessors

  • pcid: Return the pgPointCloud schema id shared by all instants

  • SRID: Return the SRID inherited from the schema

  • getX, getY, getZ: Project a tpcpoint onto a spatial dimension, yielding a tfloat

  • getDim: Project a tpcpoint onto any named schema dimension, yielding a tfloat

Conversions

Transformations

Comparisons

Restrictions

Modifications

Splitting

  • unnest: Return the distinct values of a tpcpoint with the span set on which each of them is taken

  • timeSplit: Split a tpcpoint into fragments, one per time bin

Bounding-box Operators

Spatial Relationships

Temporal Type tpcpatch

Input and Output

Constructors

  • tpcpatch: Construct a temporal pcpatch of instant subtype

  • tpcpatchSeq: Construct a temporal pcpatch of sequence subtype

  • tpcpatchSeqSet: Construct a temporal pcpatch of sequence-set subtype

Accessors

  • startNumPoints, endNumPoints: Return the number of points in the first or last instant's patch

  • numPoints: Return the total number of points across all instants

  • points: Set-returning function emitting one row per (timestamp, pcpoint)

Transformations

Restrictions

Modifications

Splitting

  • unnest: Return the distinct values of a tpcpatch with the span set on which each of them is taken

  • timeSplit: Split a tpcpatch into fragments, one per time bin

Spatial Relationships

  • eIntersects: Return true if at least one point in any instant intersects a geometry

Bounding-box Operators

Aggregations

Indexes

Binary Representation

MF-JSON Output

  • asMFJSON: Return the Moving Features JSON representation of a tpcpoint

  • asMFJSON: Return the Moving Features JSON representation of a tpcpatch

PDAL Integration

PCL Bridge