MobilityDB 1.3
Loading...
Searching...
No Matches
Functions
trgeo.c File Reference

General functions for temporal rigid geometries. More...

#include "rgeo/trgeo.h"
#include <assert.h>
#include <liblwgeom.h>
#include <liblwgeom_internal.h>
#include <meos.h>
#include <meos_rgeo.h>
#include <meos_internal.h>
#include "temporal/lifting.h"
#include "temporal/meos_catalog.h"
#include "temporal/set.h"
#include "temporal/span.h"
#include "temporal/spanset.h"
#include "temporal/temporal.h"
#include "temporal/type_util.h"
#include "geo/tgeo_spatialfuncs.h"
#include "geo/tspatial_parser.h"
#include "pose/pose.h"
#include "rgeo/trgeo_all.h"
#include "rgeo/trgeo_utils.h"

Functions

bool ensure_has_geom (int16 flags)
 Ensure that a temporal rigid geometry has a reference geometry. More...
 
bool ensure_valid_trgeo_geo (const Temporal *temp, const GSERIALIZED *gs)
 Ensure the validity of a temporal rigid geometry and a geometry. More...
 
bool ensure_valid_trgeo_stbox (const Temporal *temp, const STBox *box)
 Ensure the validity of a temporal rigid geometry and a geometry. More...
 
bool ensure_valid_trgeo_tpoint (const Temporal *temp1, const Temporal *temp2)
 Ensure the validity of two temporal rigid geometries. More...
 
bool ensure_valid_trgeo_trgeo (const Temporal *temp1, const Temporal *temp2)
 Ensure the validity of two temporal rigid geometries. More...
 
Temporalgeo_tpose_to_trgeo (const GSERIALIZED *gs, const Temporal *temp)
 Construct a temporal rigid geometry from a geometry and a temporal pose. More...
 
TInstantgeo_tposeinst_to_trgeo (const GSERIALIZED *gs, const TInstant *inst)
 Construct a temporal rigid geometry from a geometry and a temporal pose. More...
 
TSequencegeo_tposeseq_to_trgeo (const GSERIALIZED *gs, const TSequence *seq)
 Construct a temporal rigid geometry from a geometry and a temporal pose. More...
 
TSequenceSetgeo_tposeseqset_to_trgeo (const GSERIALIZED *gs, const TSequenceSet *ss)
 Construct a temporal rigid geometry from a geometry and a temporal pose. More...
 
GSERIALIZEDgeom_apply_pose (const GSERIALIZED *gs, const Pose *pose)
 Return a geometry obtained by appling a pose to a geometry. More...
 
Temporaltrgeo_append_tinstant (Temporal *temp, const TInstant *inst, interpType interp, double maxdist, const Interval *maxt, bool expand)
 Append an instant to a temporal value. More...
 
Temporaltrgeo_append_tsequence (Temporal *temp, const TSequence *seq, bool expand)
 Append a sequence to a temporal value. More...
 
char * trgeo_as_ewkt (const Temporal *temp, int maxdd)
 Return the Extended Well-Known Text (EWKT) representation of a temporal rigid geometry. More...
 
char * trgeo_as_text (const Temporal *temp, int maxdd)
 Return the Well-Known Text (WKT) representation of a temporal rigid geometry. More...
 
Temporaltrgeo_at_timestamptz (const Temporal *temp, TimestampTz t)
 Restrict a temporal rigid geometry to a timestamptz. More...
 
Temporaltrgeo_at_tstzset (const Temporal *temp, const Set *s)
 Restrict a temporal rigid geometry to a timestamptz set. More...
 
Temporaltrgeo_at_tstzspan (const Temporal *temp, const Span *s)
 Restrict a temporal rigid geometry to a timestamptz span. More...
 
Temporaltrgeo_at_tstzspanset (const Temporal *temp, const SpanSet *ss)
 Restrict a temporal rigid geometry to a timestamptz span set. More...
 
Temporaltrgeo_at_value (const Temporal *temp, const GSERIALIZED *gs)
 Restrict a temporal rigid geometry to a geometry. More...
 
Temporaltrgeo_at_values (const Temporal *temp, const Set *s)
 Restrict a temporal rigid geometry to a set of geometries. More...
 
Temporaltrgeo_delete_timestamptz (const Temporal *temp, TimestampTz t, bool connect)
 Return the value of a temporal rigid geometry at a timestamptz @csqlfn Temporal_delete_timestamptz. More...
 
Temporaltrgeo_delete_tstzset (const Temporal *temp, const Set *s, bool connect)
 Delete a timestamp set from a temporal rigid geometry connecting the instants before and after the given timestamp, if any. More...
 
Temporaltrgeo_delete_tstzspan (const Temporal *temp, const Span *s, bool connect)
 Delete a timestamptz span from a temporal rigid geometry. More...
 
Temporaltrgeo_delete_tstzspanset (const Temporal *temp, const SpanSet *ss, bool connect)
 Delete a timestamptz span set from a temporal rigid geometry. More...
 
TInstanttrgeo_end_instant (const Temporal *temp)
 Return a copy of the end instant of a temporal rigid geometry. More...
 
TSequencetrgeo_end_sequence (const Temporal *temp)
 Return a copy of the end sequence of a temporal sequence (set) More...
 
GSERIALIZEDtrgeo_end_value (const Temporal *temp)
 Return a copy of the end base value of a temporal rigid geometry. More...
 
Temporaltrgeo_from_mfjson (const char *mfjson)
 Return a temporal rigid geometry from its MF-JSON representation. More...
 
GSERIALIZEDtrgeo_geom (const Temporal *temp)
 Return a copy of the reference geometry of a temporal rigid geometry. More...
 
const GSERIALIZEDtrgeo_geom_p (const Temporal *temp)
 Return the reference geometry of a temporal rigid geometry. More...
 
Temporaltrgeo_in (const char *str)
 Return a temporal rigid geometry from its Well-Known Text (WKT) representation. More...
 
TInstanttrgeo_instant_n (const Temporal *temp, int n)
 Return a copy of the n-th instant of a temporal rigid geometry. More...
 
TInstant ** trgeo_instants (const Temporal *temp, int *count)
 Return a copy of the distinct instants of a temporal rigid geometry. More...
 
Temporaltrgeo_minus_timestamptz (const Temporal *temp, TimestampTz t)
 Restrict a temporal rigid geometry to the complement of a timestamptz. More...
 
Temporaltrgeo_minus_tstzset (const Temporal *temp, const Set *s)
 Restrict a temporal rigid geometry to the complement of a timestamptz set. More...
 
Temporaltrgeo_minus_tstzspan (const Temporal *temp, const Span *s)
 Restrict a temporal rigid geometry to the complement of a timestamptz span. More...
 
Temporaltrgeo_minus_tstzspanset (const Temporal *temp, const SpanSet *ss)
 Restrict a temporal rigid geometry to the complement of a timestamptz span set. More...
 
Temporaltrgeo_minus_value (const Temporal *temp, const GSERIALIZED *gs)
 Restrict a temporal rigid geometry to the complement of a geometry. More...
 
Temporaltrgeo_minus_values (const Temporal *temp, const Set *s)
 Restrict a temporal rigid geometry to the complement of a set of geometries. More...
 
char * trgeo_out (const Temporal *temp)
 Return the Well-Known Text (WKT) representation of a temporal rigid geometry. More...
 
Temporaltrgeo_restrict_timestamptz (const Temporal *temp, TimestampTz t, bool atfunc)
 Restrict a temporal rigid geometry to (the complement of) a timestamptz. More...
 
Temporaltrgeo_restrict_tstzset (const Temporal *temp, const Set *s, bool atfunc)
 Restrict a temporal rigid geometry to (the complement of) a timestamptz set. More...
 
Temporaltrgeo_restrict_tstzspan (const Temporal *temp, const Span *s, bool atfunc)
 Restrict a temporal rigid geometry to (the complement of) a timestamptz span. More...
 
Temporaltrgeo_restrict_tstzspanset (const Temporal *temp, const SpanSet *ss, bool atfunc)
 Restrict a temporal rigid geometry to (the complement of) a timestamptz span set. More...
 
Temporaltrgeo_restrict_value (const Temporal *temp, Datum value, bool atfunc)
 Restrict a temporal rigid geometry to (the complement of) a geometry. More...
 
Temporaltrgeo_restrict_values (const Temporal *temp, const Set *s, bool atfunc)
 Restrict a temporal rigid geometry to (the complement of) a set of geometries. More...
 
Temporaltrgeo_round (const Temporal *temp, int maxdd)
 Return a temporal rigid geometry rounded to a given number of decimal places. More...
 
TSequencetrgeo_sequence_n (const Temporal *temp, int n)
 Return a copy of the n-th sequence of a temporal sequence (set) More...
 
TSequence ** trgeo_sequences (const Temporal *temp, int *count)
 Return an array of copies of the sequences of a temporal sequence (set) More...
 
Temporaltrgeo_set_interp (const Temporal *temp, interpType interp)
 Restrict a temporal rigid geometry transformed to an interpolation. More...
 
TInstanttrgeo_start_instant (const Temporal *temp)
 Return a copy of the start instant of a temporal rigid geometry. More...
 
TSequencetrgeo_start_sequence (const Temporal *temp)
 Return a copy of the start sequence of a temporal sequence (set) More...
 
GSERIALIZEDtrgeo_start_value (const Temporal *temp)
 Return a copy of the start value of a temporal rigid geometry. More...
 
TInstanttrgeo_to_tinstant (const Temporal *temp)
 Return a temporal rigid geometry transformed to a temporal instant. More...
 
Temporaltrgeo_to_tpoint (const Temporal *temp)
 Return a temporal point obtained from the points of the temporal pose of a temporal rigid geometry. More...
 
Temporaltrgeo_to_tpose (const Temporal *temp)
 Return a temporal pose obtained by removing the reference geometry of a temporal rigid geometry. More...
 
TSequencetrgeo_to_tsequence (const Temporal *temp, const char *interp_str)
 Return a temporal rigid geometry transformed to a temporal sequence. More...
 
TSequenceSettrgeo_to_tsequenceset (const Temporal *temp, const char *interp_str)
 Return a temporal rigid geometry transformed to a temporal sequence set. More...
 
bool trgeo_value_at_timestamptz (const Temporal *temp, TimestampTz t, bool strict, Datum *result)
 Return the value of a temporal rigid geometry at a timestamptz. More...
 
bool trgeo_value_n (const Temporal *temp, int n, GSERIALIZED **result)
 Return in the last argument a copy of the n-th value of a temporal value. More...
 
char * trgeo_wkt_out (const Temporal *temp, int maxdd, bool extended)
 Return the (Extended) Well-Known Text (WKT or EWKT) representation of a temporal rigid geometry. More...
 

Detailed Description

General functions for temporal rigid geometries.