gomeos

package module
v0.1.20 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 30, 2024 License: MIT Imports: 5 Imported by: 0

README

GoMEOS

MEOS (Mobility Engine, Open Source) is a C library which enables the manipulation of temporal and spatio-temporal data based on MobilityDB's data types and functions.

GoMEOS is a Go library that wraps the MEOS C library using CGO, providing a set of Go functions that allows to use MEOS functionality by directly accessing C structs and C functions.

GoMEOS exposes the functionality of MEOS and is meant to be used directly by the user.

Usage

Installation

You'll need to install the MEOS library by compling MobilityDB.

git clone git@github.com:MobilityDB/MobilityDB.git
cd MobilityDB
mkdir build
cd build
cmake -DMEOS=on ..
make
sudo make install

GoMEOS requires CGO (CGO_ENABLED=1) in order to be built.

Then install GoMEOS by go get command.

go get github.com/MobilityDB/GoMEOS

Quick Start

IMPORTANT Before using any GoMEOS function, always call MeosInitialize(). Otherwise, the library will crash with a Segmentation Fault error. You should also always call MeosFinalize() at the end of your code.

// main.go
package main

import (
	"fmt"

	gomeos "github.com/MobilityDB/GoMEOS"
)

func main() {
	gomeos.MeosInitialize("UTC")

	/* Input temporal points in WKT format */
	inst_wkt := "POINT(1 1)@2000-01-01"
	seq_disc_wkt := "{POINT(1 1)@2000-01-01, POINT(2 2)@2000-01-02}"
	seq_linear_wkt := "[POINT(1 1)@2000-01-01, POINT(2 2)@2000-01-02]"
	seq_step_wkt := "Interp=Step;[POINT(1 1)@2000-01-01, POINT(2 2)@2000-01-02]"
	ss_linear_wkt := "{[POINT(1 1)@2000-01-01, POINT(2 2)@2000-01-02],[POINT(3 3)@2000-01-03, POINT(3 3)@2000-01-04]}"
	ss_step_wkt := "Interp=Step;{[POINT(1 1)@2000-01-01, POINT(2 2)@2000-01-02],[POINT(3 3)@2000-01-03, POINT(3 3)@2000-01-04]}"

	/* Read WKT into temporal point object */
	inst := gomeos.NewTGeomPointInst(inst_wkt)
	seq_disc := gomeos.NewTGeomPointSeq(seq_disc_wkt)
	seq_linear := gomeos.NewTGeomPointSeq(seq_linear_wkt)
	seq_step := gomeos.NewTGeomPointSeq(seq_step_wkt)
	ss_linear := gomeos.NewTGeomPointSeqSet(ss_linear_wkt)
	ss_step := gomeos.NewTGeomPointSeqSet(ss_step_wkt)

	fmt.Println("--------------------Temporal Instant--------------------")
	fmt.Println(inst.TPointOut(5))
	fmt.Println("--------------------Temporal Sequence with Discrete Interpolation--------------------")
	fmt.Println(seq_disc.TPointOut(5))
	fmt.Println("--------------------Temporal Sequence with Linear Interpolation--------------------")
	fmt.Println(seq_linear.TPointOut(5))
	fmt.Println("--------------------Temporal Sequence with Step Interpolation--------------------")
	fmt.Println(seq_step.TPointOut(5))
	fmt.Println("--------------------Temporal Sequence Set with Linear Interpolation--------------------")
	fmt.Println(ss_linear.TPointOut(5))
	fmt.Println("--------------------Temporal Sequence Set with Step Interpolation--------------------")
	fmt.Println(ss_step.TPointOut(5))
	gomeos.MeosFinalize()
}

To run this file:

go build main.go
./main
output:
--------------------Temporal Instant--------------------
POINT(1 1)@2000-01-01 00:00:00+00
--------------------Temporal Sequence with Discrete Interpolation--------------------
{POINT(1 1)@2000-01-01 00:00:00+00, POINT(2 2)@2000-01-02 00:00:00+00}
--------------------Temporal Sequence with Linear Interpolation--------------------
[POINT(1 1)@2000-01-01 00:00:00+00, POINT(2 2)@2000-01-02 00:00:00+00]
--------------------Temporal Sequence with Step Interpolation--------------------
Interp=Step;[POINT(1 1)@2000-01-01 00:00:00+00, POINT(2 2)@2000-01-02 00:00:00+00]
--------------------Temporal Sequence Set with Linear Interpolation--------------------
{[POINT(1 1)@2000-01-01 00:00:00+00, POINT(2 2)@2000-01-02 00:00:00+00], [POINT(3 3)@2000-01-03 00:00:00+00, POINT(3 3)@2000-01-04 00:00:00+00]}
--------------------Temporal Sequence Set with Step Interpolation--------------------
Interp=Step;{[POINT(1 1)@2000-01-01 00:00:00+00, POINT(2 2)@2000-01-02 00:00:00+00], [POINT(3 3)@2000-01-03 00:00:00+00, POINT(3 3)@2000-01-04 00:00:00+00]}

For more examples, you can see the examples.

// Run ais.go example
git clone git@github.com:MobilityDB/GoMEOS.git
cd GoMEOS
go run examples/ais/assemble/ais.go

Documentation

Visit pkg.go.dev for a more complete and detailed documentation.

Documentation

Index

Examples

Constants

View Source
const (
	INTERP_NONE    Interpolation = C.INTERP_NONE
	DISCRETE       Interpolation = C.DISCRETE
	STEP           Interpolation = C.STEP
	LINEAR                       = C.LINEAR
	ANYTEMPSUBTYPE               = C.ANYTEMPSUBTYPE /**< Any temporal subtype */
	TINSTANT                     = C.TINSTANT       /**< Temporal instant subtype */
	TSEQUENCE                    = C.TSEQUENCE      /**< Temporal sequence subtype */
	TSEQUENCESET                 = C.TSEQUENCESET   /**< Temporal sequence set subtype */
	T_TBOOL                      = C.T_TBOOL        /**< temporal boolean type */
	T_TFLOAT                     = C.T_TFLOAT       /**< temporal float type */
	T_TINT                       = C.T_TINT         /**< temporal integer type */
	T_TTEXT                      = C.T_TTEXT        /**< temporal text type */
	T_TGEOMPOINT                 = C.T_TGEOMPOINT   /**< temporal geometry point type */
	T_TGEOGPOINT                 = C.T_TGEOGPOINT   /**< temporal geography point type */
)

Variables

This section is empty.

Functions

func AboveTPointSTBox added in v0.1.10

func AboveTPointSTBox[TP TPoint](tp TP, stbox *STBox) bool

AboveTPointSTBox returns true if a temporal point is above a spatiotemporal box.

func AboveTPointTPoint added in v0.1.10

func AboveTPointTPoint[TP1 TPoint, TP2 TPoint](tp1 TP1, tp2 TP2) bool

AboveTPointTPoint returns true if the first temporal point is above the second temporal point.

func AdjacentTemporalTemporal added in v0.1.10

func AdjacentTemporalTemporal[T1 Temporal, T2 Temporal](temp1 T1, temp2 T2) bool

AdjacentTemporalTemporal Return true if the time spans of two temporal values are adjacent

func AdjacentTemporalTsTzSpan added in v0.1.10

func AdjacentTemporalTsTzSpan[T Temporal](temp T, tsTzSpan TsTzSpan) bool

AdjacentTemporalTsTzSpan Return true if the time span of a temporal value and a timestamptz span are adjacent

func AfterTemporalTemporal added in v0.1.10

func AfterTemporalTemporal[T1, T2 Temporal](temp1 T1, temp2 T2) bool

AfterTemporalTemporal checks if one temporal value is after another

func AfterTemporalTsTzSpan added in v0.1.10

func AfterTemporalTsTzSpan[T Temporal](temp T, tsTzSpan TsTzSpan) bool

AfterTemporalTsTzSpan checks if a temporal value is after a timestamptz span

func AlwaysContainsGeoTPoint added in v0.1.10

func AlwaysContainsGeoTPoint(gs *Geom, temp Temporal) bool

AlwaysContainsGeoTPoint returns true if the geometry contains the temporal point.

func AlwaysDWithinTPointGeo added in v0.1.10

func AlwaysDWithinTPointGeo(temp Temporal, gs *Geom, dist float64) bool

AlwaysDWithinTPointGeo returns true if the temporal point is within the specified distance of the geometry.

func AlwaysDWithinTPointTPoint added in v0.1.10

func AlwaysDWithinTPointTPoint(temp1, temp2 Temporal, dist float64) bool

AlwaysDWithinTPointTPoint returns true if the two temporal points are within the specified distance.

func AlwaysDisjointTPointGeo added in v0.1.10

func AlwaysDisjointTPointGeo(temp Temporal, gs *Geom) bool

AlwaysDisjointTPointGeo returns true if the temporal point is disjoint from the geometry.

func AlwaysDisjointTPointTPoint added in v0.1.10

func AlwaysDisjointTPointTPoint(temp1, temp2 Temporal) bool

AlwaysDisjointTPointTPoint returns true if the two temporal points are disjoint.

func AlwaysEqTBoolBool added in v0.1.9

func AlwaysEqTBoolBool[TB TBool](tb TB, value bool) bool

AlwaysEqTBoolBool Return true if a temporal boolean is always equal to a boolean

func AlwaysEqTFloatFloat added in v0.1.9

func AlwaysEqTFloatFloat[TF TFloat](tf TF, value float64) bool

AlwaysEqTFloatFloat Return true if a temporal float is always equal to a float

func AlwaysEqTIntInt added in v0.1.9

func AlwaysEqTIntInt[TI TInt](ti TI, value int) bool

AlwaysEqTIntInt Return true if a temporal integer is always equal to an integer

func AlwaysEqTPointPoint added in v0.1.10

func AlwaysEqTPointPoint(temp Temporal, gs *Geom) bool

func AlwaysEqTTextText added in v0.1.10

func AlwaysEqTTextText[TT TText](tt TT, value string) bool

AlwaysEqTTextText Return true if a temporal text is always equal to a text

func AlwaysEqTemporalTemporal added in v0.1.9

func AlwaysEqTemporalTemporal[T1 Temporal, T2 Temporal](temp1 T1, temp2 T2) bool

AlwaysEqTemporalTemporal Return true if two temporal values are always equal

func AlwaysGeTFloatFloat added in v0.1.9

func AlwaysGeTFloatFloat[TF TFloat](tf TF, value float64) bool

AlwaysGeTFloatFloat Return true if a temporal float is always greater than or equal to a float

func AlwaysGeTIntInt added in v0.1.9

func AlwaysGeTIntInt[TI TInt](ti TI, value int) bool

AlwaysGeTIntInt Return true if a temporal integer is always greater than or equal to an integer

func AlwaysGeTTextText added in v0.1.10

func AlwaysGeTTextText[TT TText](tt TT, value string) bool

AlwaysGeTTextText Return true if a temporal text is always greater than or equal to a text

func AlwaysGeTemporalTemporal added in v0.1.9

func AlwaysGeTemporalTemporal[T Temporal](t1, t2 T) bool

AlwaysGeTemporalTemporal returns true if one temporal value is always greater than or equal to another temporal value

func AlwaysGtTFloatFloat added in v0.1.9

func AlwaysGtTFloatFloat[TF TFloat](tf TF, value float64) bool

AlwaysGtTFloatFloat Return true if a temporal float is always greater than a float

func AlwaysGtTIntInt added in v0.1.9

func AlwaysGtTIntInt[TI TInt](ti TI, value int) bool

AlwaysGtTIntInt Return true if a temporal integer is always greater than an integer

func AlwaysGtTTextText added in v0.1.10

func AlwaysGtTTextText[TT TText](tt TT, value string) bool

AlwaysGtTTextText Return true if a temporal text is always greater than a text

func AlwaysGtTemporalTemporal added in v0.1.9

func AlwaysGtTemporalTemporal[T Temporal](t1, t2 T) bool

AlwaysGtTemporalTemporal returns true if one temporal value is always greater than another temporal value

func AlwaysIntersectsTPointGeo added in v0.1.10

func AlwaysIntersectsTPointGeo(temp Temporal, gs *Geom) bool

AlwaysIntersectsTPointGeo returns true if the temporal point intersects the geometry.

func AlwaysIntersectsTPointTPoint added in v0.1.10

func AlwaysIntersectsTPointTPoint(temp1, temp2 Temporal) bool

AlwaysIntersectsTPointTPoint returns true if the two temporal points intersect.

func AlwaysLeTFloatFloat added in v0.1.9

func AlwaysLeTFloatFloat[TF TFloat](tf TF, value float64) bool

AlwaysLeTFloatFloat Return true if a temporal float is always less than or equal to a float

func AlwaysLeTIntInt added in v0.1.9

func AlwaysLeTIntInt[TI TInt](ti TI, value int) bool

AlwaysLeTIntInt Return true if a temporal integer is always less than or equal to an integer

func AlwaysLeTTextText added in v0.1.10

func AlwaysLeTTextText[TT TText](tt TT, value string) bool

AlwaysLeTTextText Return true if a temporal text is always less than or equal to a text

func AlwaysLeTemporalTemporal added in v0.1.9

func AlwaysLeTemporalTemporal[T Temporal](t1, t2 T) bool

AlwaysLeTemporalTemporal returns true if one temporal value is always less than or equal to another temporal value

func AlwaysLtTFloatFloat added in v0.1.9

func AlwaysLtTFloatFloat[TF TFloat](tf TF, value float64) bool

AlwaysLtTFloatFloat Return true if a temporal float is always less than a float

func AlwaysLtTIntInt added in v0.1.9

func AlwaysLtTIntInt[TI TInt](ti TI, value int) bool

AlwaysLtTIntInt Return true if a temporal integer is always less than an integer

func AlwaysLtTTextText added in v0.1.10

func AlwaysLtTTextText[TT TText](tt TT, value string) bool

AlwaysLtTTextText Return true if a temporal text is always less than a text

func AlwaysLtTemporalTemporal added in v0.1.9

func AlwaysLtTemporalTemporal[T Temporal](t1, t2 T) bool

AlwaysLtTemporalTemporal returns true if one temporal value is always less than another temporal value

func AlwaysNeTFloatFloat added in v0.1.9

func AlwaysNeTFloatFloat[TF TFloat](tf TF, value float64) bool

AlwaysNeTFloatFloat Return true if a temporal float is always not equal to a float

func AlwaysNeTIntInt added in v0.1.9

func AlwaysNeTIntInt[TI TInt](ti TI, value int) bool

AlwaysNeTIntInt Return true if a temporal integer is always not equal to an integer

func AlwaysNeTPointPoint added in v0.1.10

func AlwaysNeTPointPoint(temp Temporal, gs *Geom) bool

func AlwaysNeTTextText added in v0.1.10

func AlwaysNeTTextText[TT TText](tt TT, value string) bool

AlwaysNeTTextText Return true if a temporal text is always not equal to a text

func AlwaysNeTemporalTemporal added in v0.1.9

func AlwaysNeTemporalTemporal[T Temporal](t1, t2 T) bool

AlwaysNeTemporalTemporal returns true if one temporal value is always not equal to another temporal value

func AlwaysTouchesTPointGeo added in v0.1.10

func AlwaysTouchesTPointGeo(temp Temporal, gs *Geom) bool

AlwaysTouchesTPointGeo returns true if the two temporal points touch.

func BackTPointSTBox added in v0.1.10

func BackTPointSTBox[TP TPoint](tp TP, stbox *STBox) bool

BackTPointSTBox returns true if a temporal point is behind a spatiotemporal box.

func BackTPointTPoint added in v0.1.10

func BackTPointTPoint[TP1 TPoint, TP2 TPoint](tp1 TP1, tp2 TP2) bool

BackTPointTPoint returns true if the first temporal point is behind the second temporal point.

func BearingPointPoint added in v0.1.10

func BearingPointPoint(g1 *Geom, g2 *Geom) bool

BearingPointPoint Return the temporal bearing between two geometry/geography points

func BeforeTemporalTemporal added in v0.1.10

func BeforeTemporalTemporal[T1, T2 Temporal](temp1 T1, temp2 T2) bool

BeforeTemporalTemporal checks if one temporal value is before another

func BeforeTemporalTsTzSpan added in v0.1.10

func BeforeTemporalTsTzSpan[T Temporal](temp T, tsTzSpan TsTzSpan) bool

BeforeTemporalTsTzSpan checks if a temporal value is before a timestamptz span

func BelowTPointSTBox added in v0.1.10

func BelowTPointSTBox[TP TPoint](tp TP, stbox *STBox) bool

BelowTPointSTBox returns true if a temporal point is below a spatiotemporal box.

func BelowTPointTPoint added in v0.1.10

func BelowTPointTPoint[TP1 TPoint, TP2 TPoint](tp1 TP1, tp2 TP2) bool

BelowTPointTPoint returns true if the first temporal point is below the second temporal point.

func ContainedTemporalTemporal added in v0.1.10

func ContainedTemporalTemporal[T1, T2 Temporal](temp1 T1, temp2 T2) bool

ContainedTemporalTemporal checks if one temporal value is contained within another

func ContainedTemporalTsTzSpan added in v0.1.10

func ContainedTemporalTsTzSpan[T Temporal](temp T, tsTzSpan TsTzSpan) bool

ContainedTemporalTsTzSpan checks if a temporal value is contained within a timestamptz span

func ContainsTemporalTemporal added in v0.1.10

func ContainsTemporalTemporal[T1, T2 Temporal](temp1 T1, temp2 T2) bool

ContainsTemporalTemporal checks if one temporal value contains another

func ContainsTemporalTsTzSpan added in v0.1.10

func ContainsTemporalTsTzSpan[T Temporal](temp T, tsTzSpan TsTzSpan) bool

ContainsTemporalTsTzSpan checks if a temporal value contains a timestamptz span

func DateADTToDate

func DateADTToDate(d C.DateADT) time.Time

func DateToDateADT

func DateToDateADT(t time.Time) C.DateADT

func DatetimeToTimestamptz

func DatetimeToTimestamptz(t time.Time) C.TimestampTz

Transform time.Time to TimestampTz

func EverContainsGeoTPoint added in v0.1.10

func EverContainsGeoTPoint(gs *Geom, temp Temporal) bool

func EverDWithinTPointGeo added in v0.1.10

func EverDWithinTPointGeo(temp Temporal, gs *Geom, dist float64) bool

func EverDWithinTPointTPoint added in v0.1.10

func EverDWithinTPointTPoint(temp1, temp2 Temporal, dist float64) bool

func EverDisjointTPointGeo added in v0.1.10

func EverDisjointTPointGeo(temp Temporal, gs *Geom) bool

func EverDisjointTPointTPoint added in v0.1.10

func EverDisjointTPointTPoint(temp1, temp2 Temporal) bool

func EverEqTBoolBool added in v0.1.9

func EverEqTBoolBool[TB TBool](tb TB, value bool) bool

EverEqTBoolBool Return true if a temporal boolean is always equal to a boolean

Example
tb1 := NewTBoolSeq("{FALSE@2022-10-01, FALSE@2022-10-02,FALSE@2022-10-03}")
tb2 := true
res := EverEqTBoolBool(tb1, tb2)
fmt.Println(res)
Output:

false

func EverEqTFloatFloat added in v0.1.9

func EverEqTFloatFloat[TF TFloat](tf TF, value float64) bool

EverEqTFloatFloat Return true if a temporal float is ever equal to a float

func EverEqTIntInt added in v0.1.9

func EverEqTIntInt[TI TInt](ti TI, value int) bool

EverEqTIntInt Return true if a temporal integer is ever equal to an integer

func EverEqTPointPoint added in v0.1.10

func EverEqTPointPoint(temp Temporal, gs *Geom) bool

func EverEqTTextText added in v0.1.10

func EverEqTTextText[TT TText](tt TT, value string) bool

EverEqTTextText Return true if a temporal text is ever equal to a text

func EverEqTemporalTemporal added in v0.1.9

func EverEqTemporalTemporal[T1 Temporal, T2 Temporal](temp1 T1, temp2 T2) bool

EverEqTemporalTemporal Return true if two temporal values are ever equal

Example
MeosInitialize("UTC")
tb1 := NewTBoolSeq("{FALSE@2022-10-01, FALSE@2022-10-02,FALSE@2022-10-03}")
tb2 := NewTBoolInst("TRUE@2022-10-01")
res := EverEqTemporalTemporal(tb1, tb2)
fmt.Println(res)
Output:

false

func EverGeTFloatFloat added in v0.1.9

func EverGeTFloatFloat[TF TFloat](tf TF, value float64) bool

EverGeTFloatFloat Return true if a temporal float is ever greater than or equal to a float

func EverGeTIntInt added in v0.1.9

func EverGeTIntInt[TI TInt](ti TI, value int) bool

EverGeTIntInt Return true if a temporal integer is ever greater than or equal to an integer

func EverGeTTextText added in v0.1.10

func EverGeTTextText[TT TText](tt TT, value string) bool

EverGeTTextText Return true if a temporal text is ever greater than or equal to a text

func EverGeTemporalTemporal added in v0.1.9

func EverGeTemporalTemporal[T Temporal](t1, t2 T) bool

EverGeTemporalTemporal returns true if one temporal value is ever greater than or equal to another temporal value

func EverGtTFloatFloat added in v0.1.9

func EverGtTFloatFloat[TF TFloat](tf TF, value float64) bool

EverGtTFloatFloat Return true if a temporal float is ever greater than a float

func EverGtTIntInt added in v0.1.9

func EverGtTIntInt[TI TInt](ti TI, value int) bool

EverGtTIntInt Return true if a temporal integer is ever greater than an integer

func EverGtTTextText added in v0.1.10

func EverGtTTextText[TT TText](tt TT, value string) bool

EverGtTTextText Return true if a temporal text is ever greater than a text

func EverGtTemporalTemporal added in v0.1.9

func EverGtTemporalTemporal[T Temporal](t1, t2 T) bool

EverGtTemporalTemporal returns true if one temporal value is ever greater than another temporal value

func EverIntersectsTPointGeo added in v0.1.10

func EverIntersectsTPointGeo(temp Temporal, gs *Geom) bool

func EverIntersectsTPointTPoint added in v0.1.10

func EverIntersectsTPointTPoint(temp1, temp2 Temporal) bool

func EverLeTFloatFloat added in v0.1.9

func EverLeTFloatFloat[TF TFloat](tf TF, value float64) bool

EverLeTFloatFloat Return true if a temporal float is ever less than or equal to a float

func EverLeTIntInt added in v0.1.9

func EverLeTIntInt[TI TInt](ti TI, value int) bool

EverLeTIntInt Return true if a temporal integer is ever less than or equal to an integer

func EverLeTTextText added in v0.1.10

func EverLeTTextText[TT TText](tt TT, value string) bool

EverLeTTextText Return true if a temporal text is ever less than or equal to a text

func EverLeTemporalTemporal added in v0.1.9

func EverLeTemporalTemporal[T Temporal](t1, t2 T) bool

EverLeTemporalTemporal returns true if one temporal value is ever less than or equal to another temporal value

func EverLtTFloatFloat added in v0.1.9

func EverLtTFloatFloat[TF TFloat](tf TF, value float64) bool

EverLtTFloatFloat Return true if a temporal float is ever less than a float

func EverLtTIntInt added in v0.1.9

func EverLtTIntInt[TI TInt](ti TI, value int) bool

EverLtTIntInt Return true if a temporal integer is ever less than an integer

func EverLtTTextText added in v0.1.10

func EverLtTTextText[TT TText](tt TT, value string) bool

EverLtTTextText Return true if a temporal text is ever less than a text

func EverLtTemporalTemporal added in v0.1.9

func EverLtTemporalTemporal[T Temporal](t1, t2 T) bool

EverLtTemporalTemporal returns true if one temporal value is ever less than another temporal value

func EverNeTFloatFloat added in v0.1.9

func EverNeTFloatFloat[TF TFloat](tf TF, value float64) bool

EverNeTFloatFloat Return true if a temporal float is ever not equal to a float

func EverNeTIntInt added in v0.1.9

func EverNeTIntInt[TI TInt](ti TI, value int) bool

EverNeTIntInt Return true if a temporal integer is ever not equal to an integer

func EverNeTPointPoint added in v0.1.10

func EverNeTPointPoint(temp Temporal, gs *Geom) bool

func EverNeTTextText added in v0.1.10

func EverNeTTextText[TT TText](tt TT, value string) bool

EverNeTTextText Return true if a temporal text is ever not equal to a text

func EverNeTemporalTemporal added in v0.1.9

func EverNeTemporalTemporal[T Temporal](t1, t2 T) bool

EverNeTemporalTemporal returns true if one temporal value is ever not equal to another temporal value

func EverTouchesTPointGeo added in v0.1.10

func EverTouchesTPointGeo(temp Temporal, gs *Geom) bool

func FrontTPointSTBox added in v0.1.10

func FrontTPointSTBox[TP TPoint](tp TP, stbox *STBox) bool

FrontTPointSTBox returns true if a temporal point is in front of a spatiotemporal box.

func FrontTPointTPoint added in v0.1.10

func FrontTPointTPoint[TP1 TPoint, TP2 TPoint](tp1 TP1, tp2 TP2) bool

FrontTPointTPoint returns true if the first temporal point is in front of the second temporal point.

func GeoAsEWKT

func GeoAsEWKT(g *Geom, precision int) string
Example
g := createGeom()
result := GeoAsEWKT(g, 5)
fmt.Println(result)
Output:

POLYGON((1 1,1 2,2 2,2 1,1 1))

func GeoAsGeojson

func GeoAsGeojson(g *Geom, option int, precision int, srs string) string
Example
g := createGeom()
result := GeoAsGeojson(g, 1, 6, "EPSG:4326")
fmt.Println(result)
Output:

{"type":"Polygon","crs":{"type":"name","properties":{"name":"EPSG:4326"}},"bbox":[1.000000,1.000000,2.000000,2.000000],"coordinates":[[[1,1],[1,2],[2,2],[2,1],[1,1]]]}

func GeoAsHexEwkb

func GeoAsHexEwkb(g *Geom, endian string) string
Example
g := createGeom()
result := GeoAsHexEwkb(g, "XDR")
fmt.Println(result)
Output:

000000000300000001000000053FF00000000000003FF00000000000003FF000000000000040000000000000004000000000000000400000000000000040000000000000003FF00000000000003FF00000000000003FF0000000000000

func GeoAsText

func GeoAsText(g *Geom, precision int) string
Example
g := createGeom()
result := GeoAsText(g, 5)
fmt.Println(result)
Output:

POLYGON((1 1,1 2,2 2,2 1,1 1))

func GeoSame

func GeoSame(g1 *Geom, g2 *Geom) bool

func IntervalToTimeDelta

func IntervalToTimeDelta(interval C.Interval) timeutil.Timedelta

func LeftTNumberNumspan added in v0.1.10

func LeftTNumberNumspan[TN TNumber, NS NumSpan](tn TN, ns NS) bool

LeftTNumberNumspan Return true if a temporal number is to the left of a number span

func LeftTNumberTBox added in v0.1.10

func LeftTNumberTBox[TN TNumber](tn TN, tbox *TBox) bool

LeftTNumberTBox Return true if a temporal number is to the left of a temporal box

func LeftTNumberTNumber added in v0.1.10

func LeftTNumberTNumber[TN1 TNumber, TN2 TNumber](tn TN1, tn2 TNumber) bool

LeftTNumberTNumber Return true if the first temporal number is to the left of the second one

func LeftTPointSTBox added in v0.1.10

func LeftTPointSTBox[TP TPoint](tp TP, stbox *STBox) bool

LeftTPointSTBox Return true if the first temporal point is to the left of the second one

func LeftTPointTPoint added in v0.1.10

func LeftTPointTPoint[TP1 TPoint, TP2 TPoint](tp1 TP1, tp2 TP2) bool

LeftTPointTPoint Return true if a temporal point is to the left of a spatiotemporal box

func MeosFinalize

func MeosFinalize()

func MeosInitialize

func MeosInitialize(tz string)

func NADTFloatFloat added in v0.1.10

func NADTFloatFloat[TF TFloat](tf TF, value float64) float64

NADTFloatFloat returns the nearest approach distance between a temporal float and a constant float.

func NADTFloatTFloat added in v0.1.10

func NADTFloatTFloat[TF1 TFloat, TF2 TFloat](tf1 TF1, tf2 TF2) float64

NADTFloatTFloat returns the nearest approach distance between two temporal floats.

func NadTIntInt added in v0.1.9

func NadTIntInt[TI TInt](tf TI, value int) float64

NadTIntInt Return the nearest approach distance between a temporal number and a number

func NadTIntTInt added in v0.1.9

func NadTIntTInt[TI1 TInt, TI2 TInt](tf1 TI1, tf2 TI2) float64

NadTIntTInt Return the nearest approach distance between two temporal integers

func OverAfterTemporalTemporal added in v0.1.10

func OverAfterTemporalTemporal[T1, T2 Temporal](temp1 T1, temp2 T2) bool

OverAfterTemporalTemporal checks if one temporal value is over and after another

func OverAfterTemporalTsTzSpan added in v0.1.10

func OverAfterTemporalTsTzSpan[T Temporal](temp T, tsTzSpan TsTzSpan) bool

OverAfterTemporalTsTzSpan checks if a temporal value is over and after a timestamptz span

func OverBeforeTemporalTemporal added in v0.1.10

func OverBeforeTemporalTemporal[T1, T2 Temporal](temp1 T1, temp2 T2) bool

OverBeforeTemporalTemporal checks if one temporal value is over and before another

func OverBeforeTemporalTsTzSpan added in v0.1.10

func OverBeforeTemporalTsTzSpan[T Temporal](temp T, tsTzSpan TsTzSpan) bool

OverBeforeTemporalTsTzSpan checks if a temporal value is over and before a timestamptz span

func OverLeftTNumberNumspan added in v0.1.10

func OverLeftTNumberNumspan[TN TNumber, NS NumSpan](tn TN, ns NS) bool

OverLeftTNumberNumspan returns true if a temporal number is overleft of a number span.

func OverLeftTNumberTBox added in v0.1.10

func OverLeftTNumberTBox[TN TNumber](tn TN, tbox *TBox) bool

OverLeftTNumberTBox returns true if a temporal number is overleft of a temporal box.

func OverLeftTNumberTNumber added in v0.1.10

func OverLeftTNumberTNumber[TN1 TNumber, TN2 TNumber](tn1 TN1, tn2 TN2) bool

OverLeftTNumberTNumber returns true if the first temporal number is overleft of the second one.

func OverRightTNumberNumspan added in v0.1.10

func OverRightTNumberNumspan[TN TNumber, NS NumSpan](tn TN, ns NS) bool

OverRightTNumberNumspan returns true if a temporal number is overright of a number span.

func OverRightTNumberTBox added in v0.1.10

func OverRightTNumberTBox[TN TNumber](tn TN, tbox *TBox) bool

OverRightTNumberTBox returns true if a temporal number is overright of a temporal box.

func OverRightTNumberTNumber added in v0.1.10

func OverRightTNumberTNumber[TN1 TNumber, TN2 TNumber](tn1 TN1, tn2 TN2) bool

OverRightTNumberTNumber returns true if the first temporal number is overright of the second one.

func OveraboveTPointSTBox added in v0.1.10

func OveraboveTPointSTBox[TP TPoint](tp TP, stbox *STBox) bool

OveraboveTPointSTBox returns true if a temporal point is overabove a spatiotemporal box.

func OveraboveTPointTPoint added in v0.1.10

func OveraboveTPointTPoint[TP1 TPoint, TP2 TPoint](tp1 TP1, tp2 TP2) bool

OveraboveTPointTPoint returns true if the first temporal point is overabove the second temporal point.

func OverbackTPointSTBox added in v0.1.10

func OverbackTPointSTBox[TP TPoint](tp TP, stbox *STBox) bool

OverbackTPointSTBox returns true if a temporal point is overback of a spatiotemporal box.

func OverbackTPointTPoint added in v0.1.10

func OverbackTPointTPoint[TP1 TPoint, TP2 TPoint](tp1 TP1, tp2 TP2) bool

OverbackTPointTPoint returns true if the first temporal point is overback of the second temporal point.

func OverbelowTPointSTBox added in v0.1.10

func OverbelowTPointSTBox[TP TPoint](tp TP, stbox *STBox) bool

OverbelowTPointSTBox returns true if a temporal point is overbelow a spatiotemporal box.

func OverbelowTPointTPoint added in v0.1.10

func OverbelowTPointTPoint[TP1 TPoint, TP2 TPoint](tp1 TP1, tp2 TP2) bool

OverbelowTPointTPoint returns true if the first temporal point is overbelow the second temporal point.

func OverfrontTPointSTBox added in v0.1.10

func OverfrontTPointSTBox[TP TPoint](tp TP, stbox *STBox) bool

OverfrontTPointSTBox returns true if a temporal point is overfront of a spatiotemporal box.

func OverfrontTPointTPoint added in v0.1.10

func OverfrontTPointTPoint[TP1 TPoint, TP2 TPoint](tp1 TP1, tp2 TP2) bool

OverfrontTPointTPoint returns true if the first temporal point is overfront of the second temporal point.

func OverlapsTemporalTemporal added in v0.1.10

func OverlapsTemporalTemporal[T1, T2 Temporal](temp1 T1, temp2 T2) bool

OverlapsTemporalTemporal checks if two temporal values overlap

func OverlapsTemporalTsTzSpan added in v0.1.10

func OverlapsTemporalTsTzSpan[T Temporal](temp T, tsTzSpan TsTzSpan) bool

OverlapsTemporalTsTzSpan checks if a temporal value overlaps with a timestamptz span

func OverleftTPointSTBox added in v0.1.10

func OverleftTPointSTBox[TP TPoint](tp TP, stbox *STBox) bool

OverleftTPointSTBox returns true if a temporal point is overleft of a spatiotemporal box.

func OverleftTPointTPoint added in v0.1.10

func OverleftTPointTPoint[TP1 TPoint, TP2 TPoint](tp1 TP1, tp2 TP2) bool

OverleftTPointTPoint returns true if the first temporal point is overleft of the second temporal point.

func OverrightTPointSTBox added in v0.1.10

func OverrightTPointSTBox[TP TPoint](tp TP, stbox *STBox) bool

OverrightTPointSTBox returns true if a temporal point is overright of a spatiotemporal box.

func OverrightTPointTPoint added in v0.1.10

func OverrightTPointTPoint[TP1 TPoint, TP2 TPoint](tp1 TP1, tp2 TP2) bool

OverrightTPointTPoint returns true if the first temporal point is overright of the second temporal point.

func RightTNumberNumspan added in v0.1.10

func RightTNumberNumspan[TN TNumber, NS NumSpan](tn TN, ns NS) bool

RightTNumberNumspan Return true if a temporal number is to the right of a number span

func RightTNumberTBox added in v0.1.10

func RightTNumberTBox[TN TNumber](tn TN, tbox *TBox) bool

RightTNumberTBox Return true if a temporal number is to the right of a temporal box

func RightTNumberTNumber added in v0.1.10

func RightTNumberTNumber[TN1 TNumber, TN2 TNumber](tn TN1, tn2 TNumber) bool

RightTNumberTNumber Return true if the first temporal number is to the right of the second one

func RightTPointSTBox added in v0.1.10

func RightTPointSTBox[TP TPoint](tp TP, stbox *STBox) bool

RightTPointSTBox returns true if a temporal point is to the right of a spatiotemporal box.

func RightTPointTPoint added in v0.1.10

func RightTPointTPoint[TP1 TPoint, TP2 TPoint](tp1 TP1, tp2 TP2) bool

RightTPointTPoint returns true if the first temporal point is to the right of the second temporal point.

func STBoxAsHexWKB added in v0.1.17

func STBoxAsHexWKB(stbox *STBox) (string, error)

STBoxAsHexWKB Return the hex-encoded ASCII Well-Known Binary (HexWKB) representation of a stbox

func STBoxAsWKB added in v0.1.17

func STBoxAsWKB(stbox *STBox) ([]byte, error)

STBoxAsWKB Returns the stbox object as a hex-encoded WKB string.

func STBoxHasT added in v0.1.17

func STBoxHasT(stbox *STBox) bool

func STBoxHasX added in v0.1.17

func STBoxHasX(stbox *STBox) bool

func STBoxHasZ added in v0.1.17

func STBoxHasZ(stbox *STBox) bool

func STBoxIsGeodetic added in v0.1.17

func STBoxIsGeodetic(stbox *STBox) bool

func STBoxOut

func STBoxOut(stbox *STBox, max_decimals int) string

func SameTemporalTemporal added in v0.1.10

func SameTemporalTemporal[T1, T2 Temporal](temp1 T1, temp2 T2) bool

SameTemporalTemporal checks if two temporal values are the same

func SameTemporalTsTzSpan added in v0.1.10

func SameTemporalTsTzSpan[T Temporal](temp T, tsTzSpan TsTzSpan) bool

SameTemporalTsTzSpan checks if a temporal value is the same as a timestamptz span

func SpansetUnionFinalfn

func SpansetUnionFinalfn[SS SpanSet](state SS, output SS) SS

func SpansetUnionTransfn

func SpansetUnionTransfn[SS SpanSet](state SS, ss SS, output SS) SS

func TBoolEndValue

func TBoolEndValue[TB TBool](tb TB) bool

TBoolEndValue Return the end value of a temporal boolean

func TBoolFromBaseTemporal added in v0.1.9

func TBoolFromBaseTemporal[T1 Temporal, T2 Temporal](value bool, base T1, output T2) T2

TBoolFromBaseTemporal Create a temporal Boolean from a Boolean value and the time frame of another temporal object.

Example
tb_seq := TBoolIn("{FALSE@2022-10-01, FALSE@2022-10-02,TRUE@2022-10-03}", &TBoolSeq{})
res := TBoolFromBaseTemporal(true, tb_seq, &TBoolSeq{})
fmt.Println(TBoolOut(res))
Output:

{t@2022-10-01 00:00:00+00, t@2022-10-02 00:00:00+00, t@2022-10-03 00:00:00+00}

func TBoolFromMFJSON

func TBoolFromMFJSON[TB TBool](input string, output TB) TB

TBoolFromMFJSON Return a temporal boolean from its MF-JSON representation

func TBoolIn

func TBoolIn[TB TBool](input string, output TB) TB

func TBoolOut

func TBoolOut[TB TBool](tb TB) string
Example
g_is := NewTBoolInst("TRUE@2022-10-01")
fmt.Println(TBoolOut(g_is))
Output:

t@2022-10-01 00:00:00+00

func TBoolStartValue

func TBoolStartValue[TB TBool](tb TB) bool

TBoolStartValue Return the start value of a temporal boolean

func TBoolValueAtTimestamp

func TBoolValueAtTimestamp[TB TBool](tb TB, ts time.Time) bool

TBoolValueAtTimestamp Return the value of a temporal boolean at a timestamptz

Example
g_is := NewTBoolSeq("{FALSE@2022-10-01, FALSE@2022-10-02,TRUE@2022-10-03}")
ts, _ := time.Parse("2006-01-02", "2022-10-01")
res := TBoolValueAtTimestamp(g_is, ts)
fmt.Println(res)
Output:

false

func TBoolValueSet

func TBoolValueSet[TB TBool](tb TB) ([]bool, error)

TBoolValueSet Return the array of base values of a temporal boolean

func TBoxAsHexWKB added in v0.1.11

func TBoxAsHexWKB(tbox *TBox) (string, error)

TBoxAsHexWKB Return the hex-encoded ASCII Well-Known Binary (HexWKB) representation of a tbox

func TBoxAsWKB added in v0.1.11

func TBoxAsWKB(tbox *TBox) ([]byte, error)

TBoxAsWKB Returns the tbox object as a hex-encoded WKB string.

func TBoxOut

func TBoxOut(tbox *TBox, max_decimals int) string

TBoxOut Return the Well-Known Text (WKT) representation of a temporal box

func TFloatEndValue added in v0.1.9

func TFloatEndValue[TB TFloat](tb TB) float64

TFloatEndValue Return the end value of a temporal float

func TFloatFromBaseTemporal added in v0.1.9

func TFloatFromBaseTemporal[T1 Temporal, T2 Temporal](value float64, base T1, output T2) T2

TFloatFromBaseTemporal Return a temporal float from a float and the time frame of another temporal value

Example
tb_seq := TBoolIn("{FALSE@2022-10-01, FALSE@2022-10-02,TRUE@2022-10-03}", &TBoolSeq{})
res := TFloatFromBaseTemporal(2, tb_seq, &TFloatSeq{})
fmt.Println(TFloatOut(res, 10))
Output:

{2@2022-10-01 00:00:00+00, 2@2022-10-02 00:00:00+00, 2@2022-10-03 00:00:00+00}

func TFloatFromMFJSON

func TFloatFromMFJSON[TF TFloat](input string, output TF) TF

TFloatFromMFJSON Return a temporal float from its MF-JSON representation

func TFloatIn

func TFloatIn[TF TFloat](input string, output TF) TF

TFloatIn Return a temporal float from its Well-Known Text (WKT) representation

func TFloatMaxValue added in v0.1.9

func TFloatMaxValue[TB TFloat](tb TB) float64

TFloatMaxValue Return the maximum value of a temporal float

func TFloatMinValue added in v0.1.9

func TFloatMinValue[TB TFloat](tb TB) float64

TFloatMinValue Return the minimum value of a temporal float

func TFloatOut

func TFloatOut[TF TFloat](tf TF, maxdd int) string

TFloatOut Return a temporal float from its Well-Known Text (WKT) representation

func TFloatScaleValue added in v0.1.10

func TFloatScaleValue[TF TFloat](ti TF, width int, output TF) TF

TFloatScaleValue Return a temporal number whose value dimension is scaled by a value

func TFloatShiftValue added in v0.1.10

func TFloatShiftValue[TF TFloat](ti TF, delta int, output TF) TF

TFloatShiftValue Return a temporal integer whose value dimension is shifted by a value

func TFloatShitScaleValue added in v0.1.10

func TFloatShitScaleValue[TF TFloat](ti TF, shift int, width int, output TF) TF

TFloatShitScaleValue Return a temporal number whose value dimension is scaled by a value

func TFloatStartValue added in v0.1.9

func TFloatStartValue[TB TFloat](tb TB) float64

TFloatStartValue Return the start value of a temporal float

func TFloatToTInt

func TFloatToTInt[TF TFloat, TI TInt](tf TF, ti TI) (TI, error)

TFloatToTInt Return a temporal float converted to a temporal integer

Example
tf_seq := TFloatIn("{1.2@2022-10-01, 2.3@2022-10-02,3.4@2022-10-03}", &TFloatSeq{})
res, _ := TFloatToTInt(tf_seq, &TIntSeq{})
fmt.Println(TIntOut(res))
Output:

{1@2022-10-01 00:00:00+00, 2@2022-10-02 00:00:00+00, 3@2022-10-03 00:00:00+00}

func TFloatValueAtTimestamp added in v0.1.9

func TFloatValueAtTimestamp[TF TFloat](tf TF, ts time.Time) float64

TFloatValueAtTimestamp Return the value of a temporal float at a timestamptz

Example
tf_seq := TFloatIn("{1.2@2022-10-01, 2.3@2022-10-02,3.4@2022-10-03}", &TFloatSeq{})
ts, _ := time.Parse("2006-01-02", "2022-10-01")
res := TFloatValueAtTimestamp(tf_seq, ts)
fmt.Println(res)
Output:

1.2

func TFloatValues added in v0.1.9

func TFloatValues[TF TFloat](tf TF) ([]float64, error)

TFloatValues Return the array of base values of a temporal float

Example
tf_seq := TFloatIn("{1.2@2022-10-01, 2.3@2022-10-02,3.4@2022-10-03}", &TFloatSeq{})
res, _ := TFloatValues(tf_seq)
fmt.Println(res)
Output:

[1.2 2.3 3.4]

func TGeogPointFromMFJSON

func TGeogPointFromMFJSON[TG TGeogPoint](input string, output TG) TG

func TGeogPointIn

func TGeogPointIn[TG TGeogPoint](input string, output TG) TG

func TGeomPointFromMFJSON

func TGeomPointFromMFJSON[TG TGeomPoint](input string, output TG) TG

func TGeomPointIn

func TGeomPointIn[TG TGeomPoint](input string, output TG) TG

func TIntEndValue added in v0.1.9

func TIntEndValue[TB TInt](tb TB) int

TIntEndValue Return the end value of a temporal int

func TIntFromBaseTemporal added in v0.1.9

func TIntFromBaseTemporal[T1 Temporal, T2 Temporal](value int, base T1, output T2) T2

TIntFromBaseTemporal Return a temporal int from a int and the time frame of another temporal value

func TIntFromMFJSON

func TIntFromMFJSON[TI TInt](input string, output TI) TI

TIntFromMFJSON Return a temporal integer from its MF-JSON representation

func TIntIn

func TIntIn[TI TInt](input string, output TI) TI

TIntIn Return a temporal integer from its Well-Known Text (WKT) representation

func TIntMaxValue added in v0.1.9

func TIntMaxValue[TB TInt](tb TB) int

TIntMaxValue Return the maximum value of a temporal int

func TIntMinValue added in v0.1.9

func TIntMinValue[TB TInt](tb TB) int

TIntMinValue Return the minimum value of a temporal int

func TIntOut

func TIntOut[TI TInt](ti TI) string

TIntOut Return a temporal integer from its Well-Known Text (WKT) representation

func TIntScaleValue added in v0.1.10

func TIntScaleValue[TI TInt](ti TI, width int, output TI) TI

TIntScaleValue Return a temporal number whose value dimension is scaled by a value

func TIntShiftValue added in v0.1.10

func TIntShiftValue[TI TInt](ti TI, delta int, output TI) TI

TIntShiftValue Return a temporal integer whose value dimension is shifted by a value

func TIntShitScaleValue added in v0.1.10

func TIntShitScaleValue[TI TInt](ti TI, shift int, width int, output TI) TI

TIntShitScaleValue Return a temporal number whose value dimension is scaled by a value

func TIntStartValue added in v0.1.9

func TIntStartValue[TB TInt](tb TB) int

TIntStartValue Return the start value of a temporal int

func TIntToTFloat added in v0.1.9

func TIntToTFloat[TI TInt, TF TFloat](ti TI, output TF) TF

TIntToTFloat Return a temporal integer converted to a temporal float

func TIntValueAtTimestamp added in v0.1.9

func TIntValueAtTimestamp[TF TInt](tf TF, ts time.Time) int

TIntValueAtTimestamp Return the value of a temporal int at a timestamptz

func TIntValues added in v0.1.9

func TIntValues[TF TInt](tf TF) ([]int, error)

TIntValues Return the array of base values of a temporal integer

func TNotTBool added in v0.1.9

func TNotTBool[TB TBool](tb TB, output TB) TB

TNotTBool Return the boolean not of a temporal boolean

Example
tb1 := NewTBoolSeq("{TRUE@2022-10-01, TRUE@2022-10-02,TRUE@2022-10-03}")
res := TNotTBool(tb1, &TBoolSeq{})
fmt.Println(res.String())
Output:

{f@2022-10-01 00:00:00+00, f@2022-10-02 00:00:00+00, f@2022-10-03 00:00:00+00}

func TNumberAbs added in v0.1.10

func TNumberAbs[TN TNumber](tn TN, output TN) TN

TNumberAbs Return the absolute value of a temporal number

func TNumberIntegral

func TNumberIntegral[TN TNumber](tn TN) float64

TNumberIntegral Return the integral (area under the curve) of a temporal number

Example
tf_seq := TFloatIn("{1.2@2022-10-01, 2.3@2022-10-02,3.4@2022-10-03}", &TFloatSeq{})
res := TNumberIntegral(tf_seq)
fmt.Println(res)
Output:

0

func TNumberToSpan added in v0.1.9

func TNumberToSpan[TN TNumber, S Span](tn TN, output S) S

TNumberToSpan Return the value span of a temporal number

Example
tf_seq := TFloatIn("{1.2@2022-10-01, 2.3@2022-10-02,3.4@2022-10-03}", &TFloatSeq{})
fs := TNumberToSpan(tf_seq, &FloatSpan{})
fmt.Println(fs.FloatSpanOut(10))
Output:

[1.2, 3.4]

func TNumberTwavg added in v0.1.10

func TNumberTwavg[TN TNumber](temp TN) float64

TNumberTwavg Return the time-weighted average of a temporal number

Example
tf_seq := TFloatIn("{1.2@2022-10-01, 2.3@2022-10-02,3.4@2022-10-03}", &TFloatSeq{})
res := TNumberTwavg(tf_seq)
fmt.Println(res)
Output:

2.3000000000000003

func TNumberValueSpans added in v0.1.9

func TNumberValueSpans[TN TNumber, SS SpanSet](tn TN, ss SS) SS

TNumberValueSpans Return the base values of a temporal number as a span set

Example
tf_seq := TFloatIn("{1.2@2022-10-01, 2.3@2022-10-02,3.4@2022-10-03}", &TFloatSeq{})
fs := TNumberValueSpans(tf_seq, &FloatSpanSet{})
fmt.Println(fs.FloatSpanSetOut(10))
Output:

{[1.2, 1.2], [2.3, 2.3], [3.4, 3.4]}

func TPointAsEWKT

func TPointAsEWKT[T TPoint](temp T, maxdd int) string

TPointAsEWKT Return the Extended Well-Known Text (EWKT) representation of a temporal point

func TPointAsGeoJson added in v0.1.10

func TPointAsGeoJson[TP TPoint](temp TP, option int, precision int, srs string) string

TPointAsGeoJson Return the GeoJson representation of the geometry of a temporal point

Example
tf_seq := TGeomPointIn("{POINT(1 1)@2022-10-01 00:00:00+00, POINT(2 2)@2022-10-02 00:00:00+00}", &TGeomPointSeq{})
res := TPointAsGeoJson(tf_seq, 1, 15, "EPSG:4326")
fmt.Println(res)
Output:

{"type":"MultiPoint","crs":{"type":"name","properties":{"name":"EPSG:4326"}},"bbox":[1.000000000000000,1.000000000000000,2.000000000000000,2.000000000000000],"coordinates":[[1,1],[2,2]]}

func TPointAsText

func TPointAsText[TP TPoint](tp TP, maxdd int) string

TPointAsText Return the Well-Known Text (WKT) representation of a temporal point

func TPointGeoAsEWKT

func TPointGeoAsEWKT[T TPoint](temp T, maxdd int) string

TPointGeoAsEWKT Return the Extended Well-Known Text (EWKT) representation of the geometry of a temporal point

func TPointIsSimple added in v0.1.10

func TPointIsSimple[TP TPoint](tp TP) bool

TPointIsSimple Return true if a temporal point does not self-intersect

func TPointLength

func TPointLength[TP TPoint](tp TP) float64

TPointLength Returns the length of the trajectory.

func TPointOut

func TPointOut[TP TPoint](tp TP, maxdd int) string

TPointOut Return a temporal geometry/geography point from its Well-Known Text (WKT) representation

func TPointSetSrid added in v0.1.10

func TPointSetSrid[TP TPoint](tp TP, srid int, output TP) TP

TPointSetSrid Return a temporal point with the coordinates set to an SRID

func TPointSrid added in v0.1.10

func TPointSrid[TP TPoint](tp TP) int

TPointSrid Return the SRID of a temporal point

func TPointTransform

func TPointTransform[T TPoint](temp T, output T, srid_to int) T

TPointTransform Return a temporal point transformed to another SRID

func TSequenceLowerInclude

func TSequenceLowerInclude[TS TSequence](temp TS) bool

func TSequenceMake

func TSequenceMake[TI TInstant, TS TSequence](instants []TI, count int, lower_inc bool, upper_inc bool, interp Interpolation, normalize bool, output TS) TS

TSequenceMake Return a temporal sequence from an array of temporal instants

func TSequenceUpperInclude

func TSequenceUpperInclude[TS TSequence](temp TS) bool

func TTextEndValue added in v0.1.10

func TTextEndValue[TT TText](tt TT) string

TTextEndValue Return the end value of a temporal text

func TTextFromBaseTemporal added in v0.1.10

func TTextFromBaseTemporal[T1 Temporal, T2 Temporal](value string, base T1, output T2) T2

TTextFromBaseTemporal Return a temporal text from a text and the time frame of another temporal value

func TTextFromMFJSON

func TTextFromMFJSON[TF TText](input string, output TF) TF

TTextFromMFJSON Return a temporal text from its MF-JSON representation

func TTextIn

func TTextIn[TF TText](input string, output TF) TF

TTextIn Return a temporal text from its Well-Known Text (WKT) representation

func TTextLower added in v0.1.10

func TTextLower[TT TText](tt TT, output TT) TT

TTextLower Return a temporal text transformed to lowercase

func TTextMaxValue added in v0.1.10

func TTextMaxValue[TT TText](tt TT) string

TTextMaxValue Return the maximum value of a temporal text

func TTextMinValue added in v0.1.10

func TTextMinValue[TT TText](tt TT) string

TTextMinValue Return the minimum value of a temporal text

func TTextOut

func TTextOut[TF TText](tf TF) string

TTextOut Return a temporal text from its Well-Known Text (WKT) representation

func TTextStartValue added in v0.1.10

func TTextStartValue[TT TText](tt TT) string

TTextStartValue Return the start value of a temporal text

func TTextUpper added in v0.1.10

func TTextUpper[TT TText](tt TT, output TT) TT

TTextUpper Return a temporal text transformed to uppercase

func TTextValueAtTimestamp added in v0.1.10

func TTextValueAtTimestamp[TT TText](tt TT, ts time.Time) string

TTextValueAtTimestamp Return the value of a temporal text at a timestamptz

func TemporalAsHexWKB added in v0.1.10

func TemporalAsHexWKB[T Temporal](temp T) (string, error)

TemporalAsHexWKB Return the hex-encoded ASCII Well-Known Binary (HexWKB) representation of a temporal

Example
tb1 := NewTBoolSeq("{FALSE@2022-10-01, FALSE@2022-10-02,FALSE@2022-10-03}")
wkb, _ := TemporalAsHexWKB(tb1)
fmt.Println(wkb)
Output:

011A000603000000030000E06E8FEC8C020000004046AD008D02000000A01DCB148D0200

func TemporalAsMFJSON

func TemporalAsMFJSON[T Temporal](temp T, with_bbox bool, flags int, precision int, srs string) string

TemporalAsMFJSON Returns the temporal object as a MF-JSON string.

func TemporalAsWKB added in v0.1.10

func TemporalAsWKB[T Temporal](temp T) ([]byte, error)

TemporalAsWKB Returns the temporal object as a hex-encoded WKB string.

Example
tb1 := NewTBoolSeq("{FALSE@2022-10-01, FALSE@2022-10-02,FALSE@2022-10-03}")
wkb, _ := TemporalAsWKB(tb1)
res := TemporalFromWKB(wkb)
fmt.Println(res.String())
Output:

{f@2022-10-01 00:00:00+00, f@2022-10-02 00:00:00+00, f@2022-10-03 00:00:00+00}

func TemporalDuration

func TemporalDuration[T Temporal](temp T, ignore_gaps bool) timeutil.Timedelta

TemporalDuration Return the duration of a temporal value

func TemporalDyntimewarpDistance

func TemporalDyntimewarpDistance[T Temporal](temp1 T, temp2 T) float64

TemporalDyntimewarpDistance Return the Dynamic Time Warp distance between two temporal values

func TemporalEndInstant

func TemporalEndInstant[T Temporal, TI TInstant](temp T, inst TI) TI

TemporalEndInstant Return a copy of the end instant of a temporal value

func TemporalEndTimestamptz

func TemporalEndTimestamptz[T Temporal](temp T) time.Time

TemporalEndTimestamptz Return the end timestamptz of a temporal value

func TemporalFrechetDistance

func TemporalFrechetDistance[T Temporal](temp1 T, temp2 T) float64

TemporalFrechetDistance Return the Frechet distance between two temporal values

func TemporalFromHexWKB

func TemporalFromHexWKB[T Temporal](s string, output T) T

TemporalFromHexWKB Returns a temporal object from a hex-encoded WKB string.

func TemporalHash

func TemporalHash[T Temporal](temp T) int

TemporalHash Return the 32-bit hash value of a temporal value

func TemporalHausdorffDistance

func TemporalHausdorffDistance[T Temporal](temp1 T, temp2 T) float64

TemporalHausdorffDistance Return the Hausdorf distance between two temporal values

func TemporalInstantN

func TemporalInstantN[T Temporal, TI TInstant](temp T, inst TI, n int) TI

TemporalInstantN Return a copy of the n-th instant of a temporal value

func TemporalInstants

func TemporalInstants[T Temporal, TI TInstant](temp T, insts []TI) []TI

TemporalInstants Return a copy of the distinct instants of a temporal value

func TemporalInterpolation

func TemporalInterpolation[T Temporal](temp T) string

TemporalInterpolation Return the string representation of the interpolation of a temporal value

func TemporalMaxInstant

func TemporalMaxInstant[T Temporal, TI TInstant](temp T, inst TI) TI

TemporalMaxInstant Return a copy of the instant with maximum base value of a temporal value

func TemporalMinInstant

func TemporalMinInstant[T Temporal, TI TInstant](temp T, inst TI) TI

TemporalMinInstant Return a copy of the instant with minimum base value of a temporal value

func TemporalNumInstants

func TemporalNumInstants[T Temporal](temp T) int

TemporalNumInstants Returns the number of instants

func TemporalNumTimestamps

func TemporalNumTimestamps[T Temporal](temp T) int

TemporalNumTimestamps Return the number of distinct timestamps of a temporal value

func TemporalScaleTime added in v0.1.10

func TemporalScaleTime[T Temporal](temp T, duration timeutil.Timedelta, output T) T

TemporalScaleTime Return a temporal value scaled by an interval

func TemporalSetInterp added in v0.1.10

func TemporalSetInterp[T Temporal](temp T, interp Interpolation, output T) T

TemporalSetInterp Return a temporal value transformed to a given interpolation

func TemporalShiftScaleTime added in v0.1.10

func TemporalShiftScaleTime[T Temporal](temp T, shift timeutil.Timedelta, duration timeutil.Timedelta, output T) T

TemporalShiftScaleTime Return a temporal value shifted and/or scaled by two intervals

func TemporalShiftTime added in v0.1.10

func TemporalShiftTime[T Temporal](temp T, delta timeutil.Timedelta, output T) T

TemporalShiftTime Return a temporal value shifted by an interval

func TemporalSimplifyDP

func TemporalSimplifyDP[T Temporal](temp T, new_temp T, dist float64, syncdist bool) T

TemporalSimplifyDP Return a temporal float/point simplified using the Douglas-Peucker line simplification algorithm

func TemporalStartInstant

func TemporalStartInstant[T Temporal, TI TInstant](temp T, inst TI) TI

TemporalStartInstant Returns the first instant

func TemporalStartTimestamptz

func TemporalStartTimestamptz[T Temporal](temp T) time.Time

TemporalStartTimestamptz Return the start timestamp of a temporal value

func TemporalTimestampN

func TemporalTimestampN[T Temporal](temp T, n int) time.Time

TemporalTimestampN Return the n-th distinct timestamp of a temporal value in the last argument

func TemporalTimestamps

func TemporalTimestamps[T Temporal](temp T) []time.Time

TemporalTimestamps Return the array of timestamps of a temporal value

func TimeDeltaToInterval

func TimeDeltaToInterval(td timeutil.Timedelta) C.Interval

func TimestamptzIn

func TimestamptzIn(timeStr string) C.TimestampTz

func TimestamptzOut

func TimestamptzOut(ts C.TimestampTz) string

func TimestamptzToDatetime

func TimestamptzToDatetime(tstz C.TimestampTz) time.Time

Transform TimestampTz to time.Time

func TpointAtGeomTime

func TpointAtGeomTime[T Temporal](temp T, new_temp T, geom *Geom) T

TPointAtGeomTime Return a temporal point restricted to a geometry

func TpointMinusGeomTime

func TpointMinusGeomTime[T Temporal](temp T, new_temp T, geom *Geom) T

TPointMinusGeomTime Return a temporal point minus a geometry

Types

type DateSet

type DateSet struct {
	// contains filtered or unexported fields
}

func FalseDateSet

func FalseDateSet() *DateSet

func NewDateSet

func NewDateSet(g_ds_in string) *DateSet

func (*DateSet) Add

func (g_ds *DateSet) Add(other interface{}) (Dates, error)

func (*DateSet) Contains

func (g_ds *DateSet) Contains(other interface{}) (bool, error)

func (*DateSet) DateSetOut

func (g_ds *DateSet) DateSetOut() string

func (*DateSet) Distance

func (g_ds *DateSet) Distance(other interface{}) (timeutil.Timedelta, error)

func (*DateSet) Duration

func (g_ds *DateSet) Duration() timeutil.Timedelta

func (*DateSet) ElementN

func (g_ds *DateSet) ElementN(n int) time.Time

func (*DateSet) Elements

func (g_ds *DateSet) Elements() []time.Time

func (*DateSet) EndElement

func (g_ds *DateSet) EndElement() time.Time

func (*DateSet) Intersection

func (g_ds *DateSet) Intersection(other interface{}) (interface{}, error)

func (*DateSet) IsLeft

func (g_ds *DateSet) IsLeft(other interface{}) (bool, error)

func (*DateSet) IsOverOrLeft

func (g_ds *DateSet) IsOverOrLeft(other interface{}) (bool, error)

func (*DateSet) IsOverOrRight

func (g_ds *DateSet) IsOverOrRight(other interface{}) (bool, error)

func (*DateSet) IsRight

func (g_ds *DateSet) IsRight(other interface{}) (bool, error)

func (*DateSet) Minus

func (g_ds *DateSet) Minus(other interface{}) (Dates, error)

func (*DateSet) NumElements

func (g_ds *DateSet) NumElements() int

func (DateSet) Output

func (ds DateSet) Output() string

func (*DateSet) Overlaps

func (g_ds *DateSet) Overlaps(other interface{}) (bool, error)

func (*DateSet) Scale

func (g_ds *DateSet) Scale(duration interface{}) (*DateSet, error)

func (*DateSet) Shift

func (g_ds *DateSet) Shift(delta interface{}) (*DateSet, error)

func (*DateSet) ShiftScale

func (g_ds *DateSet) ShiftScale(shift interface{}, duration interface{}) (*DateSet, error)

func (*DateSet) StartElement

func (g_ds *DateSet) StartElement() time.Time

func (*DateSet) Sub

func (g_ds *DateSet) Sub(other interface{}) (Dates, error)

func (*DateSet) ToSpan

func (g_ds *DateSet) ToSpan() *DateSpan

func (*DateSet) ToSpanSet

func (g_ds *DateSet) ToSpanSet() *DateSpanSet

func (*DateSet) Union

func (g_ds *DateSet) Union(other interface{}) (Dates, error)

type DateSpan

type DateSpan struct {
	// contains filtered or unexported fields
}

DateSpan wraps the C Span type

func NewDateSpan

func NewDateSpan(g_ds_in string) *DateSpan

func (*DateSpan) Contains

func (g_ds *DateSpan) Contains(other interface{}) (bool, error)

func (*DateSpan) DateSpanOut

func (g_ds *DateSpan) DateSpanOut() string

func (*DateSpan) Distance

func (g_ds *DateSpan) Distance(other interface{}) (timeutil.Timedelta, error)

func (*DateSpan) Duration

func (g_ds *DateSpan) Duration() timeutil.Timedelta

func (*DateSpan) Intersection

func (g_ds *DateSpan) Intersection(other interface{}) (Dates, error)

func (*DateSpan) IsAdjacent

func (g_ds *DateSpan) IsAdjacent(other interface{}) (bool, error)

func (*DateSpan) IsLeft

func (g_ds *DateSpan) IsLeft(other interface{}) (bool, error)

func (*DateSpan) IsOverOrLeft

func (g_ds *DateSpan) IsOverOrLeft(other interface{}) (bool, error)

func (*DateSpan) IsOverOrRight

func (g_ds *DateSpan) IsOverOrRight(other interface{}) (bool, error)

func (*DateSpan) IsRight

func (g_ds *DateSpan) IsRight(other interface{}) (bool, error)

func (*DateSpan) Lower

func (g_ds *DateSpan) Lower() time.Time

func (*DateSpan) Minus

func (g_ds *DateSpan) Minus(other interface{}) (*DateSpanSet, error)

func (DateSpan) Output

func (ds DateSpan) Output() string

func (*DateSpan) Overlaps

func (g_ds *DateSpan) Overlaps(other interface{}) (bool, error)

func (*DateSpan) Scale

func (g_ds *DateSpan) Scale(duration interface{}) (*DateSpan, error)

func (*DateSpan) Shift

func (g_ds *DateSpan) Shift(delta interface{}) (*DateSpan, error)

func (*DateSpan) ShiftScale

func (g_ds *DateSpan) ShiftScale(shift interface{}, duration interface{}) (*DateSpan, error)

func (*DateSpan) ToSpanSet

func (g_ds *DateSpan) ToSpanSet() *DateSpanSet

func (*DateSpan) ToTstzspan

func (g_ds *DateSpan) ToTstzspan() *TsTzSpan

func (*DateSpan) Union

func (g_ds *DateSpan) Union(other interface{}) (*DateSpanSet, error)

func (*DateSpan) Upper

func (g_ds *DateSpan) Upper() time.Time

type DateSpanSet

type DateSpanSet struct {
	// contains filtered or unexported fields
}

func NewDateSpanSet

func NewDateSpanSet(g_dss_in string) *DateSpanSet

func (*DateSpanSet) Add

func (g_dss *DateSpanSet) Add(other interface{}) (*DateSpanSet, error)

func (*DateSpanSet) Contains

func (g_dss *DateSpanSet) Contains(other interface{}) (bool, error)

func (*DateSpanSet) DateN

func (g_dss *DateSpanSet) DateN(n int) time.Time

func (*DateSpanSet) DateSpanSetOut

func (g_dss *DateSpanSet) DateSpanSetOut() string

func (*DateSpanSet) Dates

func (g_dss *DateSpanSet) Dates() []time.Time

func (*DateSpanSet) Distance

func (g_dss *DateSpanSet) Distance(other interface{}) (timeutil.Timedelta, error)

func (*DateSpanSet) Duration

func (g_dss *DateSpanSet) Duration(ignore_gap bool) timeutil.Timedelta

func (*DateSpanSet) EndDate

func (g_dss *DateSpanSet) EndDate() time.Time

func (*DateSpanSet) EndSpan

func (g_dss *DateSpanSet) EndSpan() DateSpan

func (*DateSpanSet) Intersection

func (g_dss *DateSpanSet) Intersection(other interface{}) (*DateSpanSet, error)

func (*DateSpanSet) IsAdjacent

func (g_dss *DateSpanSet) IsAdjacent(other interface{}) (bool, error)

func (*DateSpanSet) IsLeft

func (g_ds *DateSpanSet) IsLeft(other interface{}) (bool, error)

func (*DateSpanSet) IsOverOrLeft

func (g_ds *DateSpanSet) IsOverOrLeft(other interface{}) (bool, error)

func (*DateSpanSet) IsOverOrRight

func (g_ds *DateSpanSet) IsOverOrRight(other interface{}) (bool, error)

func (*DateSpanSet) IsRight

func (g_ds *DateSpanSet) IsRight(other interface{}) (bool, error)

func (*DateSpanSet) Minus

func (g_dss *DateSpanSet) Minus(other interface{}) (*DateSpanSet, error)

func (*DateSpanSet) Mul

func (g_dss *DateSpanSet) Mul(other interface{}) (*DateSpanSet, error)

func (*DateSpanSet) NumDates

func (g_dss *DateSpanSet) NumDates() int

func (*DateSpanSet) NumSpans

func (g_dss *DateSpanSet) NumSpans() int

func (DateSpanSet) Output

func (ds DateSpanSet) Output() string

func (*DateSpanSet) Overlaps

func (g_dss *DateSpanSet) Overlaps(other interface{}) (bool, error)

func (*DateSpanSet) Scale

func (g_ds *DateSpanSet) Scale(duration interface{}) (*DateSpanSet, error)

func (*DateSpanSet) Shift

func (g_ds *DateSpanSet) Shift(delta interface{}) (*DateSpanSet, error)

func (*DateSpanSet) ShiftScale

func (g_ds *DateSpanSet) ShiftScale(shift interface{}, duration interface{}) (*DateSpanSet, error)

func (*DateSpanSet) SpanN

func (g_dss *DateSpanSet) SpanN(n int) DateSpan

func (*DateSpanSet) Spans

func (g_dss *DateSpanSet) Spans() []DateSpan

func (*DateSpanSet) StartDate

func (g_dss *DateSpanSet) StartDate() time.Time

func (*DateSpanSet) StartSpan

func (g_dss *DateSpanSet) StartSpan() DateSpan

func (*DateSpanSet) Sub

func (g_dss *DateSpanSet) Sub(other interface{}) (*DateSpanSet, error)

func (*DateSpanSet) ToSpan

func (g_dss *DateSpanSet) ToSpan() *DateSpan

func (*DateSpanSet) ToTsTzSpanSet

func (g_dss *DateSpanSet) ToTsTzSpanSet() *TsTzSpanSet

func (*DateSpanSet) Union

func (g_dss *DateSpanSet) Union(other interface{}) (*DateSpanSet, error)

type Dates

type Dates interface {
	Output() string
}

type FloatSet

type FloatSet struct {
	// contains filtered or unexported fields
}

func NewFloatSet

func NewFloatSet(g_fs_in string) FloatSet
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
fmt.Println(g_fs.FloatSetOut(5))
Output:

{1.23, 2.9, 3.6}

func (*FloatSet) Add

func (g_fs *FloatSet) Add(other interface{}) (*FloatSet, error)
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
added, _ := g_fs.Add(4.0)
fmt.Println(added.FloatSetOut(10))
Output:

{1.23, 2.9, 3.6, 4}

func (*FloatSet) Contains

func (g_fs *FloatSet) Contains(other interface{}) (bool, error)
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
con, _ := g_fs.Contains(2.0)
fmt.Println(con)

g_fs2 := NewFloatSet("{2.9, 4.70, 5.97, 1.23, 3.6}")
conSet, _ := g_fs2.Contains(g_fs)
fmt.Println(conSet)
Output:

false
false

func (*FloatSet) Distance

func (g_fs *FloatSet) Distance(other interface{}) (float64, error)
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
dist, _ := g_fs.Distance(5.0)
fmt.Println(dist)
Output:

1.4

func (FloatSet) ElementN

func (g_fs FloatSet) ElementN(n int) float64
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
fmt.Println(g_fs.ElementN(0))
fmt.Println(g_fs.ElementN(1))
fmt.Println(g_fs.ElementN(2))
Output:

1.23
2.9
3.6

func (FloatSet) Elements

func (g_fs FloatSet) Elements() []float64
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
fmt.Println(g_fs.Elements())
Output:

[1.23 2.9 3.6]

func (FloatSet) EndElement

func (g_fs FloatSet) EndElement() float64
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
fmt.Println(g_fs.EndElement())
Output:

3.6

func (*FloatSet) FloatSetOut

func (g_fs *FloatSet) FloatSetOut(max_decimal int) string

func (*FloatSet) Intersection

func (g_fs *FloatSet) Intersection(other interface{}) (*FloatSet, error)
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
g_fs2 := NewFloatSet("{2.9, 4.70, 5.97, 1.23, 3.6}")
inter, _ := g_fs.Intersection(&g_fs2)
fmt.Println(inter.FloatSetOut(5))
Output:

{1.23, 2.9, 3.6}

func (*FloatSet) IsLeft

func (g_fs *FloatSet) IsLeft(other interface{}) (bool, error)
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
left, _ := g_fs.IsLeft(4.0)
fmt.Println(left)
Output:

true

func (*FloatSet) IsOverOrLeft

func (g_fs *FloatSet) IsOverOrLeft(other interface{}) (bool, error)
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
overleft, _ := g_fs.IsOverOrLeft(3.0)
fmt.Println(overleft)
Output:

false

func (*FloatSet) IsOverOrRight

func (g_fs *FloatSet) IsOverOrRight(other interface{}) (bool, error)
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
overright, _ := g_fs.IsOverOrRight(3.0)
fmt.Println(overright)
Output:

false

func (*FloatSet) IsRight

func (g_fs *FloatSet) IsRight(other interface{}) (bool, error)
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
right, _ := g_fs.IsRight(0.0)
fmt.Println(right)
Output:

true

func (*FloatSet) Minus

func (g_fs *FloatSet) Minus(other interface{}) (*FloatSet, error)
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
g_fs2 := NewFloatSet("{2.9, 4.70, 5.97, 1.23, 3.6}")
inter, _ := g_fs2.Intersection(&g_fs)
fmt.Println(inter.FloatSetOut(5))
Output:

{1.23, 2.9, 3.6}

func (*FloatSet) Mul

func (g_fs *FloatSet) Mul(other interface{}) (*FloatSet, error)
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
g_fs2 := NewFloatSet("{2.9, 4.70, 5.97, 1.23, 3.6}")
mul, _ := g_fs.Mul(&g_fs2)
fmt.Println(mul.FloatSetOut(5))
Output:

{1.23, 2.9, 3.6}

func (FloatSet) NumElements

func (g_fs FloatSet) NumElements() int
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
fmt.Println(g_fs.NumElements())
Output:

3

func (FloatSet) Scale

func (g_fs FloatSet) Scale(width float64) FloatSet
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
scale := g_fs.Scale(2.0)
fmt.Println(scale.FloatSetOut(5))
Output:

{1.23, 2.63928, 3.23}

func (FloatSet) Shift

func (g_fs FloatSet) Shift(delta float64) FloatSet
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
shift := g_fs.Shift(1.0)
fmt.Println(shift.FloatSetOut(5))
Output:

{2.23, 3.9, 4.6}

func (FloatSet) ShiftScale

func (g_fs FloatSet) ShiftScale(d float64, w float64) FloatSet
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
ss := g_fs.ShiftScale(1.0, 2.0)
fmt.Println(ss.FloatSetOut(5))
Output:

{2.23, 3.63928, 4.23}

func (FloatSet) StartElement

func (g_fs FloatSet) StartElement() float64
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
fmt.Println(g_fs.StartElement())
Output:

1.23

func (*FloatSet) Sub

func (g_fs *FloatSet) Sub(other interface{}) (*FloatSet, error)
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
sub, _ := g_fs.Sub(2.0)
fmt.Println(sub.FloatSetOut(5))
Output:

{1.23, 2.9, 3.6}

func (FloatSet) ToIntSet

func (g_fs FloatSet) ToIntSet() IntSet
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
g_is := g_fs.ToIntSet()
fmt.Println(g_is.IntSetOut())
Output:

{1, 2, 3}

func (FloatSet) ToSpanSet

func (g_fs FloatSet) ToSpanSet() FloatSpanSet
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
g_fss := g_fs.ToSpanSet()
fmt.Println(g_fss.FloatSpanSetOut(5))
Output:

{[1.23, 1.23], [2.9, 2.9], [3.6, 3.6]}

func (*FloatSet) Union

func (g_fs *FloatSet) Union(other interface{}) (*FloatSet, error)
Example
g_fs := NewFloatSet("{1.23, 2.9, 3.6}")
g_fs2 := NewFloatSet("{2.9, 4.70, 5.97, 1.23, 3.6}")
union, _ := g_fs.Union(&g_fs2)
fmt.Println(union.FloatSetOut(10))
Output:

{1.23, 2.9, 3.6, 4.7, 5.97}

type FloatSpan

type FloatSpan struct {
	// contains filtered or unexported fields
}

func NewFloatSpan

func NewFloatSpan(g_fs_in string) *FloatSpan
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
fmt.Println(g_fs.FloatSpanOut(10))
Output:

[1.1, 3.3]

func TBoxToFloatSpan added in v0.1.11

func TBoxToFloatSpan(tbox *TBox) *FloatSpan

TBoxToFloatSpan Return a temporal box converted to a float span

func (*FloatSpan) Add

func (g_fs *FloatSpan) Add(other interface{}) (*FloatSpanSet, error)

func (*FloatSpan) Contains

func (g_fs *FloatSpan) Contains(other interface{}) (bool, error)
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
contains, err := g_fs.Contains(2.2)
fmt.Println(contains, err)
Output:

true <nil>

func (*FloatSpan) Distance

func (g_fs *FloatSpan) Distance(other interface{}) (float64, error)
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
g_fs_2 := NewFloatSpan("[2.2, 4.4]")
distance, err := g_fs.Distance(g_fs_2)
fmt.Println(distance, err)
distance, err = g_fs.Distance(20)
fmt.Println(distance, err)
Output:

0 <nil>
4.625393849793197e+18 <nil>

func (FloatSpan) FloatSpanOut

func (g_fs FloatSpan) FloatSpanOut(max_decimal int) string

func (*FloatSpan) Init added in v0.1.9

func (g_fs *FloatSpan) Init(c_span *C.Span)

func (*FloatSpan) Inner added in v0.1.9

func (g_fs *FloatSpan) Inner() *C.Span

func (*FloatSpan) Intersection

func (g_fs *FloatSpan) Intersection(other interface{}) (*FloatSpan, error)
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
g_fs_2 := NewFloatSpan("[2.2, 4.4]")
res, err := g_fs.Intersection(g_fs_2)
fmt.Println(res.FloatSpanOut(5), err)
Output:

[2.2, 3.3] <nil>

func (*FloatSpan) IsAdjacent

func (g_fs *FloatSpan) IsAdjacent(other interface{}) (bool, error)
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
is_adj, err := g_fs.IsAdjacent(3.4)
fmt.Println(is_adj, err)
Output:

false <nil>

func (*FloatSpan) IsLeft

func (g_fs *FloatSpan) IsLeft(other interface{}) (bool, error)
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
is_left, err := g_fs.IsLeft(4.4)
fmt.Println(is_left, err)
Output:

true <nil>

func (*FloatSpan) IsNumSpan added in v0.1.10

func (g_fs *FloatSpan) IsNumSpan() bool

func (*FloatSpan) IsOverOrLeft

func (g_fs *FloatSpan) IsOverOrLeft(other interface{}) (bool, error)
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
is_over_or_left, err := g_fs.IsOverOrLeft(3.3)
fmt.Println(is_over_or_left, err)
Output:

true <nil>

func (*FloatSpan) IsOverOrRight

func (g_fs *FloatSpan) IsOverOrRight(other interface{}) (bool, error)
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
is_over_or_right, err := g_fs.IsOverOrRight(2.2)
fmt.Println(is_over_or_right, err)
Output:

false <nil>

func (*FloatSpan) IsRight

func (g_fs *FloatSpan) IsRight(other interface{}) (bool, error)
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
is_right, err := g_fs.IsRight(0.0)
fmt.Println(is_right, err)
Output:

true <nil>

func (*FloatSpan) IsSame

func (g_fs *FloatSpan) IsSame(other interface{}) (bool, error)
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
is_same, err := g_fs.IsSame(2.2)
fmt.Println(is_same, err)
Output:

false <nil>

func (FloatSpan) Lower

func (g_fs FloatSpan) Lower() float64
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
fmt.Println(g_fs.Lower())
Output:

1.1

func (*FloatSpan) Minus

func (g_fs *FloatSpan) Minus(other interface{}) (*FloatSpanSet, error)
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
res, err := g_fs.Minus(2.2)
fmt.Println(res.FloatSpanSetOut(5), err)
Output:

{[1.1, 2.2), (2.2, 3.3]} <nil>

func (*FloatSpan) Mul

func (g_fs *FloatSpan) Mul(other interface{}) (*FloatSpan, error)

func (FloatSpan) Scale

func (g_fs FloatSpan) Scale(width float64) FloatSpan
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
scaled := g_fs.Scale(2.2)
fmt.Println(scaled.FloatSpanOut(5))
Output:

[1.1, 3.3]

func (FloatSpan) Shift

func (g_fs FloatSpan) Shift(delta float64) FloatSpan

func (FloatSpan) ShiftScale

func (g_fs FloatSpan) ShiftScale(d float64, w float64) FloatSpan
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
shiftedScaled := g_fs.ShiftScale(1.1, 2.2)
fmt.Println(shiftedScaled.FloatSpanOut(5))
Output:

[2.2, 4.4]

func (*FloatSpan) Sub

func (g_fs *FloatSpan) Sub(other interface{}) (*FloatSpanSet, error)

func (FloatSpan) ToIntSpan

func (g_fs FloatSpan) ToIntSpan() IntSpan
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
g_is := g_fs.ToIntSpan()
fmt.Println(g_is.IntSpanOut())
Output:

[1, 4)

func (FloatSpan) ToSpanSet

func (g_fs FloatSpan) ToSpanSet() FloatSpanSet

func (*FloatSpan) Union

func (g_fs *FloatSpan) Union(other interface{}) (*FloatSpanSet, error)
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
res, err := g_fs.Union(2.2)
fmt.Println(res.FloatSpanSetOut(5), err)
Output:

{[1.1, 3.3]} <nil>

func (FloatSpan) Upper

func (g_fs FloatSpan) Upper() float64
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
fmt.Println(g_fs.Upper())
Output:

3.3

func (FloatSpan) Width

func (g_fs FloatSpan) Width() float32
Example
g_fs := NewFloatSpan("[1.1, 3.3]")
fmt.Println(g_fs.Width())
Output:

2.2

type FloatSpanSet

type FloatSpanSet struct {
	// contains filtered or unexported fields
}

func NewFloatSpanSet

func NewFloatSpanSet(g_fss_in string) *FloatSpanSet

func (*FloatSpanSet) Add

func (g_fss *FloatSpanSet) Add(other interface{}) (*FloatSpanSet, error)

func (*FloatSpanSet) Contains

func (g_fss *FloatSpanSet) Contains(other interface{}) (bool, error)

func (*FloatSpanSet) Distance

func (g_fss *FloatSpanSet) Distance(other interface{}) (float32, error)

func (FloatSpanSet) EndSpan

func (g_fss FloatSpanSet) EndSpan() FloatSpan

Returns the last span in FloatSpanSet. Returns:

A FloatSpan instance

MEOS Functions:

spanset_end_span

func (*FloatSpanSet) FloatSpanSetOut

func (g_fss *FloatSpanSet) FloatSpanSetOut(max_decimal int) string

Return the string representation of the content of FloatSpanSet.

Returns:

String

MEOS Functions:

floatspanset_out
Example
g_fss := NewFloatSpanSet("{[1.1,3.3]}")
fmt.Println(g_fss.FloatSpanSetOut(10))
Output:

{[1.1, 3.3]}

func (*FloatSpanSet) Init

func (fss *FloatSpanSet) Init(ss *C.SpanSet)

func (*FloatSpanSet) Inner

func (fss *FloatSpanSet) Inner() *C.SpanSet

func (*FloatSpanSet) Intersection

func (g_fss *FloatSpanSet) Intersection(other interface{}) (*FloatSpanSet, error)

func (*FloatSpanSet) IsAdjacent

func (g_fss *FloatSpanSet) IsAdjacent(other interface{}) (bool, error)

func (*FloatSpanSet) IsLeft

func (g_fss *FloatSpanSet) IsLeft(other interface{}) (bool, error)

func (*FloatSpanSet) IsOverOrLeft

func (g_fss *FloatSpanSet) IsOverOrLeft(other interface{}) (bool, error)

func (*FloatSpanSet) IsOverOrRight

func (g_fss *FloatSpanSet) IsOverOrRight(other interface{}) (bool, error)

func (*FloatSpanSet) IsRight

func (g_fss *FloatSpanSet) IsRight(other interface{}) (bool, error)

func (*FloatSpanSet) IsSame

func (g_fss *FloatSpanSet) IsSame(other interface{}) (bool, error)

func (*FloatSpanSet) IsSpanSet

func (fss *FloatSpanSet) IsSpanSet() bool

func (*FloatSpanSet) Minus

func (g_fss *FloatSpanSet) Minus(other interface{}) (*FloatSpanSet, error)

func (*FloatSpanSet) Mul

func (g_fss *FloatSpanSet) Mul(other interface{}) (*FloatSpanSet, error)

func (FloatSpanSet) NumSpans

func (g_fss FloatSpanSet) NumSpans() int

Returns the number of spans in FloatSpanSet. Returns:

An int

MEOS Functions:

spanset_num_spans
Example
g_fss := NewFloatSpanSet("{[1.1,4.4), [9.9,100.0]}")
fmt.Println(g_fss.NumSpans())
Output:

2

func (FloatSpanSet) Scale

func (g_fss FloatSpanSet) Scale(width float64) FloatSpanSet

Return a new “FloatSpanSet“ with the lower and upper bounds scaled so that the width is “width“.

Args:

width: The new width

Returns:

A new ``FloatSpanSet`` instance

MEOS Functions:

floatspanset_shift_scale

func (FloatSpanSet) Shift

func (g_fss FloatSpanSet) Shift(delta float64) FloatSpanSet

Return a new “FloatSpanSet“ with the lower and upper bounds shifted by “delta“.

Args:

delta: The value to shift by

Returns:

A new ``FloatSpanSet`` instance

MEOS Functions:

floatspanset_shift_scale

func (FloatSpanSet) ShiftScale

func (g_fss FloatSpanSet) ShiftScale(d float64, w float64) FloatSpanSet

Return a new “FloatSpanSet“ with the lower and upper bounds shifted by “delta“.

Args:

delta: The value to shift by

Returns:

A new ``FloatSpanSet`` instance

MEOS Functions:

floatspanset_shift_scale

func (FloatSpanSet) SpanN

func (g_fss FloatSpanSet) SpanN(n int) FloatSpan

Returns the n-th span in FloatSpanSet. Returns:

A FloatSpan instance

MEOS Functions:

spanset_span_n

func (FloatSpanSet) Spans

func (g_fss FloatSpanSet) Spans() []FloatSpan

Returns the list of spans in FloatSpanSet. Returns:

A FloatSpan instance

MEOS Functions:

spanset_spans

func (FloatSpanSet) StartSpan

func (g_fss FloatSpanSet) StartSpan() FloatSpan

Returns the first span in spanset. Returns:

A FloatSpan instance

MEOS Functions:

spanset_start_span

func (*FloatSpanSet) Sub

func (g_fss *FloatSpanSet) Sub(other interface{}) (*FloatSpanSet, error)

func (FloatSpanSet) ToIntSpanSet

func (g_fss FloatSpanSet) ToIntSpanSet() IntSpanSet

Converts FloatSpanSet to an IntSpanSet instance.

Returns:

A new IntSpanSet instance

MEOS Functions:

floatspanset_to_intspanset
Example
g_fss := NewFloatSpanSet("{[1.1,4.4), [9.9,100.0]}")
ciss := g_fss.ToIntSpanSet()
fmt.Println(ciss.IntSpanSetOut())
Output:

{[1, 4), [9, 101)}

func (FloatSpanSet) ToSpan

func (g_fss FloatSpanSet) ToSpan() FloatSpan

Returns a span that encompasses _inner.

Returns:

A new struct `FloatSpan` instance

MEOS Functions:

spanset_span
Example
g_fss := NewFloatSpanSet("{[1.1,3.3]}")
g_fs := g_fss.ToSpan()
fmt.Println(g_fs.FloatSpanOut(10))
Output:

[1.1, 3.3]

func (*FloatSpanSet) Union

func (g_fss *FloatSpanSet) Union(other interface{}) (*FloatSpanSet, error)

func (FloatSpanSet) Width

func (g_fss FloatSpanSet) Width(ignore_gap bool) float64

Returns the width of the spanset. By default, i.e., when the second argument is False, the function takes into account the gaps within, i.e., returns the sum of the widths of the spans within. Otherwise, the function returns the width of the spanset ignoring any gap, i.e., the width from the lower bound of the first span to the upper bound of the last span.

Parameters:

ignore_gaps: Whether to take into account potential gaps in
the spanset.

Returns:

A `float` representing the duration of the spanset

MEOS Functions:

floatspanset_width
Example
g_fss := NewFloatSpanSet("{[1.1,4.4), [9.9,100.0]}")
fmt.Println(g_fss.Width(true))
fmt.Println(g_fss.Width(false))
Output:

98.9
93.39999999999999

type Geo

type Geo interface {
	Inner() *C.GSERIALIZED
	IsGeo() bool
}

type Geom

type Geom struct {
	// contains filtered or unexported fields
}

func GeoFromGeojson

func GeoFromGeojson(input string) *Geom

func GeographyFromHexEwkb

func GeographyFromHexEwkb(input string) *Geom

func GeographyFromText

func GeographyFromText(input string, srid int) *Geom

func GeometryFromHexEwkb

func GeometryFromHexEwkb(input string) *Geom

func GeometryFromText

func GeometryFromText(input string, srid int) *Geom

func NewGeom

func NewGeom(geom_str string, typemod int) Geom

func PgisGeographyIn

func PgisGeographyIn(input string, typemod int) *Geom

func PgisGeometryIn

func PgisGeometryIn(input string, typemod int) *Geom

func STBoxToGeo added in v0.1.17

func STBoxToGeo(stbox *STBox) *Geom

func TPointEndValue added in v0.1.10

func TPointEndValue[TP TPoint](tp TP) *Geom

TPointEndValue Return the end value of a temporal point

func TPointStartValue added in v0.1.10

func TPointStartValue[TP TPoint](tp TP) *Geom

TPointStartValue Return the start value of a temporal point

func TPointTrajectory

func TPointTrajectory[TP TPoint](tp TP) *Geom

TPointTrajectory Return the trajectory of a temporal point

func TPointTwcentroid added in v0.1.10

func TPointTwcentroid[TP TPoint](tp TP) *Geom

TPointTwcentroid Return the time-weighed centroid of a temporal geometry point

func TPointValueAtTimestamp added in v0.1.10

func TPointValueAtTimestamp[TP TPoint](tp TP, ts time.Time) *Geom

TPointValueAtTimestamp Return the value of a temporal point at a timestamptz

func TPointValueSet added in v0.1.10

func TPointValueSet[TP TPoint](tp TP) ([]*Geom, error)

TPointValueSet Return the array of base values of a temporal geometry point

Example
tf_seq := TGeomPointIn("{POINT(1 1)@2022-10-01 00:00:00+00, POINT(2 2)@2022-10-02 00:00:00+00}", &TGeomPointSeq{})
geoms, _ := TPointValueSet(tf_seq)
fmt.Println(GeoAsText(geoms[0], 10))
fmt.Println(GeoAsText(geoms[1], 10))
Output:

POINT(1 1)
POINT(2 2)

func (*Geom) GeoOut

func (geom *Geom) GeoOut() string

type IntSet

type IntSet struct {
	// contains filtered or unexported fields
}

func NewIntSet

func NewIntSet(g_is_in string) IntSet
Example
g_is := createIntSet()
fmt.Println(g_is.IntSetOut())
Output:

{1, 2, 3}

func (*IntSet) Add

func (g_is *IntSet) Add(other interface{}) (*IntSet, error)
Example
g_is := createIntSet()
added, _ := g_is.Add(4)
fmt.Println(added.IntSetOut())
Output:

{1, 2, 3, 4}

func (*IntSet) Contains

func (g_is *IntSet) Contains(other interface{}) (bool, error)
Example
g_is := createIntSet()
con, _ := g_is.Contains(2)
fmt.Println(con)
g_is2 := createIntSet2()
conSet, _ := g_is2.Contains(g_is)
fmt.Println(conSet)
Output:

true
false

func (*IntSet) Distance

func (g_is *IntSet) Distance(other interface{}) (int, error)
Example
g_is := createIntSet()
dist, _ := g_is.Distance(5)
fmt.Println(dist)
Output:

2

func (IntSet) ElementN

func (g_is IntSet) ElementN(n int) int
Example
g_is := createIntSet()
fmt.Println(g_is.ElementN(0))
fmt.Println(g_is.ElementN(1))
fmt.Println(g_is.ElementN(2))
Output:

1
2
3

func (IntSet) Elements

func (g_is IntSet) Elements() []int
Example
g_is := createIntSet()
fmt.Println(g_is.Elements())
Output:

[1 2 3]

func (IntSet) EndElement

func (g_is IntSet) EndElement() int
Example
g_is := createIntSet()
fmt.Println(g_is.EndElement())
Output:

3

func (*IntSet) IntSetOut

func (g_is *IntSet) IntSetOut() string

func (*IntSet) Intersection

func (g_is *IntSet) Intersection(other interface{}) (*IntSet, error)
Example
g_is := createIntSet()
g_is2 := createIntSet2()
inter, _ := g_is.Intersection(&g_is2)
fmt.Println(inter.IntSetOut())
Output:

{3}

func (*IntSet) IsLeft

func (g_is *IntSet) IsLeft(other interface{}) (bool, error)
Example
g_is := createIntSet()
left, _ := g_is.IsLeft(4)
fmt.Println(left)
Output:

true

func (*IntSet) IsOverOrLeft

func (g_is *IntSet) IsOverOrLeft(other interface{}) (bool, error)
Example
g_is := createIntSet()
overleft, _ := g_is.IsOverOrLeft(3)
fmt.Println(overleft)
Output:

true

func (*IntSet) IsOverOrRight

func (g_is *IntSet) IsOverOrRight(other interface{}) (bool, error)
Example
g_is := createIntSet()
overright, _ := g_is.IsOverOrRight(3)
fmt.Println(overright)
Output:

false

func (*IntSet) IsRight

func (g_is *IntSet) IsRight(other interface{}) (bool, error)
Example
g_is := createIntSet()
right, _ := g_is.IsRight(0)
fmt.Println(right)
Output:

true

func (*IntSet) Minus

func (g_is *IntSet) Minus(other interface{}) (*IntSet, error)
Example
g_is := createIntSet()
g_is2 := createIntSet2()
mins, _ := g_is.Minus(&g_is2)
fmt.Println(mins.IntSetOut())
Output:

{1, 2}

func (*IntSet) Mul

func (g_is *IntSet) Mul(other interface{}) (*IntSet, error)
Example
g_is := createIntSet()
g_is2 := createIntSet2()
mul, _ := g_is.Mul(&g_is2)
fmt.Println(mul.IntSetOut())
Output:

{3}

func (IntSet) NumElements

func (g_is IntSet) NumElements() int
Example
g_is := createIntSet()
fmt.Println(g_is.NumElements())
Output:

3

func (IntSet) Scale

func (g_is IntSet) Scale(width int) IntSet
Example
g_is := createIntSet()
g_is_scale := g_is.Scale(2)
fmt.Println(g_is_scale.IntSetOut())
Output:

{1, 2, 4}

func (IntSet) Shift

func (g_is IntSet) Shift(delta int) IntSet
Example
g_is := createIntSet()
g_is_shift := g_is.Shift(1)
fmt.Println(g_is_shift.IntSetOut())
Output:

{2, 3, 4}

func (IntSet) ShiftScale

func (g_is IntSet) ShiftScale(d int, w int) IntSet
Example
g_is := createIntSet()
g_is_ss := g_is.ShiftScale(1, 2)
fmt.Println(g_is_ss.IntSetOut())
Output:

{2, 3, 5}

func (IntSet) StartElement

func (g_is IntSet) StartElement() int
Example
g_is := createIntSet()
fmt.Println(g_is.StartElement())
Output:

1

func (*IntSet) Sub

func (g_is *IntSet) Sub(other interface{}) (*IntSet, error)
Example
g_is := createIntSet()
sub, _ := g_is.Sub(2)
fmt.Println(sub.IntSetOut())
Output:

{1, 3}

func (IntSet) ToFloatSet

func (g_is IntSet) ToFloatSet() FloatSet
Example
g_is := createIntSet()
g_fs := g_is.ToFloatSet()
fmt.Println(g_fs.FloatSetOut(5))
Output:

{1, 2, 3}

func (IntSet) ToSpanSet

func (g_is IntSet) ToSpanSet() IntSpanSet
Example
g_is := createIntSet()
g_iss := g_is.ToSpanSet()
fmt.Println(g_iss.IntSpanSetOut())
Output:

{[1, 4)}

func (*IntSet) Union

func (g_is *IntSet) Union(other interface{}) (*IntSet, error)
Example
g_is := createIntSet()
g_is2 := createIntSet2()
union, _ := g_is.Union(&g_is2)
fmt.Println(union.IntSetOut())
Output:

{1, 2, 3, 4, 5}

type IntSpan

type IntSpan struct {
	// contains filtered or unexported fields
}

func NewIntSpan

func NewIntSpan(g_is_in string) *IntSpan

func (*IntSpan) Add

func (g_is *IntSpan) Add(other interface{}) (*IntSpanSet, error)
Example
g_is := createIntSpan()
res, err := g_is.Add(200)
fmt.Println(res.IntSpanSetOut())
fmt.Println(err)
Output:

{[4, 6), [200, 201)}
<nil>

func (*IntSpan) Contains

func (g_is *IntSpan) Contains(other interface{}) (bool, error)
Example
g_is := createIntSpan()
g_is2 := createIntSpan2()
res, err := g_is.Contains(g_is2)
fmt.Println(res)
fmt.Println(err)
res, err = g_is.Contains(200)
fmt.Println(res)
fmt.Println(err)
Output:

false
<nil>
false
<nil>

func (*IntSpan) Distance

func (g_is *IntSpan) Distance(other interface{}) (int, error)
Example
g_is := createIntSpan()
res, err := g_is.Distance(200)
fmt.Println(res)
fmt.Println(err)
Output:

195
<nil>

func (*IntSpan) Init added in v0.1.9

func (g_fs *IntSpan) Init(c_span *C.Span)

func (*IntSpan) Inner added in v0.1.9

func (g_fs *IntSpan) Inner() *C.Span

func (*IntSpan) IntSpanOut

func (g_is *IntSpan) IntSpanOut() string
Example
g_is := createIntSpan()
fmt.Println(g_is.IntSpanOut())
Output:

[4, 6)

func (*IntSpan) Intersection

func (g_is *IntSpan) Intersection(other interface{}) (*IntSpan, error)

func (*IntSpan) IsAdjacent

func (g_is *IntSpan) IsAdjacent(other interface{}) (bool, error)
Example
g_is := createIntSpan()
g_is2 := createIntSpan2()
res, err := g_is.IsAdjacent(g_is2)
fmt.Println(res)
fmt.Println(err)
res, err = g_is.IsAdjacent(5)
fmt.Println(res)
fmt.Println(err)
Output:

true
<nil>
false
<nil>

func (*IntSpan) IsLeft

func (g_is *IntSpan) IsLeft(other interface{}) (bool, error)
Example
g_is := createIntSpan()
g_is2 := createIntSpan2()
res, err := g_is.IsLeft(g_is2)
fmt.Println(res)
fmt.Println(err)
res, err = g_is.IsLeft(6)
fmt.Println(res)
fmt.Println(err)
Output:

false
<nil>
true
<nil>

func (*IntSpan) IsNumSpan added in v0.1.10

func (g_fs *IntSpan) IsNumSpan() bool

func (*IntSpan) IsOverOrLeft

func (g_is *IntSpan) IsOverOrLeft(other interface{}) (bool, error)
Example
g_is := createIntSpan()
g_is2 := createIntSpan2()
res, err := g_is.IsOverOrLeft(g_is2)
fmt.Println(res)
fmt.Println(err)
res, err = g_is.IsOverOrLeft(4)
fmt.Println(res)
fmt.Println(err)
Output:

false
<nil>
false
<nil>

func (*IntSpan) IsOverOrRight

func (g_is *IntSpan) IsOverOrRight(other interface{}) (bool, error)
Example
g_is := createIntSpan()
g_is2 := createIntSpan2()
res, err := g_is.IsOverOrRight(g_is2)
fmt.Println(res)
fmt.Println(err)
res, err = g_is.IsOverOrRight(6)
fmt.Println(res)
fmt.Println(err)
Output:

true
<nil>
false
<nil>

func (*IntSpan) IsRight

func (g_is *IntSpan) IsRight(other interface{}) (bool, error)
Example
g_is := createIntSpan()
g_is2 := createIntSpan2()
res, err := g_is.IsRight(g_is2)
fmt.Println(res)
fmt.Println(err)
res, err = g_is.IsRight(6)
fmt.Println(res)
fmt.Println(err)
Output:

true
<nil>
false
<nil>

func (*IntSpan) IsSame

func (g_is *IntSpan) IsSame(other interface{}) (bool, error)
Example
g_is := createIntSpan()
res, err := g_is.IsSame(200)
fmt.Println(res)
fmt.Println(err)
g_is2 := createIntSpan()
res, err = g_is.IsSame(g_is2)
fmt.Println(res)
fmt.Println(err)
Output:

false
<nil>
true
<nil>

func (*IntSpan) Lower

func (g_is *IntSpan) Lower() int

func (*IntSpan) Minus

func (g_is *IntSpan) Minus(other interface{}) (*IntSpanSet, error)
Example
g_is := createIntSpan()
g_is2 := createIntSpan2()
res, err := g_is.Minus(g_is2)
fmt.Println(res.IntSpanSetOut())
fmt.Println(err)
Output:

{[4, 6)}
<nil>

func (*IntSpan) Mul

func (g_is *IntSpan) Mul(other interface{}) (*IntSpan, error)

func (*IntSpan) Scale

func (g_is *IntSpan) Scale(width int) IntSpan

func (*IntSpan) Shift

func (g_is *IntSpan) Shift(delta int) IntSpan

func (*IntSpan) ShiftScale

func (g_is *IntSpan) ShiftScale(d int, w int) IntSpan

func (*IntSpan) Sub

func (g_is *IntSpan) Sub(other interface{}) (*IntSpanSet, error)

func (*IntSpan) ToFloatSpan

func (g_is *IntSpan) ToFloatSpan() FloatSpan
Example
g_is := createIntSpan()
g_fs := g_is.ToFloatSpan()
fmt.Println(g_fs.FloatSpanOut(10))
Output:

[4, 5]

func (*IntSpan) ToSpanSet

func (g_is *IntSpan) ToSpanSet() IntSpanSet
Example
g_is := createIntSpan()
g_iss := g_is.ToSpanSet()
fmt.Println(g_iss.IntSpanSetOut())
Output:

{[4, 6)}

func (*IntSpan) Union

func (g_is *IntSpan) Union(other interface{}) (*IntSpanSet, error)
Example
g_is := createIntSpan()
g_is2 := createIntSpan2()
res, err := g_is.Union(g_is2)
fmt.Println(res.IntSpanSetOut())
fmt.Println(err)
Output:

{[1, 6)}
<nil>

func (*IntSpan) Upper

func (g_is *IntSpan) Upper() int

func (*IntSpan) Width

func (g_is *IntSpan) Width() float32

type IntSpanSet

type IntSpanSet struct {
	// contains filtered or unexported fields
}

func NewIntSpanSet

func NewIntSpanSet(g_iss_in string) *IntSpanSet

func (*IntSpanSet) Add

func (g_iss *IntSpanSet) Add(other interface{}) (*IntSpanSet, error)

func (*IntSpanSet) Contains

func (g_iss *IntSpanSet) Contains(other interface{}) (bool, error)

func (*IntSpanSet) Distance

func (g_iss *IntSpanSet) Distance(other interface{}) (int, error)

func (IntSpanSet) EndSpan

func (g_iss IntSpanSet) EndSpan() IntSpan

Returns the last span in IntSpanSet. Returns:

A IntSpan instance

MEOS Functions:

spanset_end_span

func (*IntSpanSet) IntSpanSetOut

func (g_iss *IntSpanSet) IntSpanSetOut() string

Return the string representation of the content of IntSpanSet.

Returns:

String

MEOS Functions:

intspanset_out

func (*IntSpanSet) Intersection

func (g_iss *IntSpanSet) Intersection(other interface{}) (*IntSpanSet, error)

func (*IntSpanSet) IsAdjacent

func (g_iss *IntSpanSet) IsAdjacent(other interface{}) (bool, error)

func (*IntSpanSet) IsLeft

func (g_iss *IntSpanSet) IsLeft(other interface{}) (bool, error)

func (*IntSpanSet) IsOverOrLeft

func (g_iss *IntSpanSet) IsOverOrLeft(other interface{}) (bool, error)

func (*IntSpanSet) IsOverOrRight

func (g_iss *IntSpanSet) IsOverOrRight(other interface{}) (bool, error)

func (*IntSpanSet) IsRight

func (g_iss *IntSpanSet) IsRight(other interface{}) (bool, error)

func (*IntSpanSet) IsSame

func (g_iss *IntSpanSet) IsSame(other interface{}) (bool, error)

func (*IntSpanSet) Minus

func (g_iss *IntSpanSet) Minus(other interface{}) (*IntSpanSet, error)

func (*IntSpanSet) Mul

func (g_iss *IntSpanSet) Mul(other interface{}) (*IntSpanSet, error)

func (IntSpanSet) NumSpans

func (g_iss IntSpanSet) NumSpans() int

Returns the number of spans in IntSpanSet. Returns:

An int

MEOS Functions:

spanset_num_spans

func (IntSpanSet) Scale

func (g_iss IntSpanSet) Scale(width int) IntSpanSet

Return a new “IntSpanSet“ with the lower and upper bounds scaled so that the width is “width“.

Args:

width: The new width

Returns:

A new ``IntSpanSet`` instance

MEOS Functions:

intspanset_shift_scale

func (IntSpanSet) Shift

func (g_iss IntSpanSet) Shift(delta int) IntSpanSet

Return a new “IntSpanSet“ with the lower and upper bounds shifted by “delta“.

Args:

delta: The value to shift by

Returns:

A new ``IntSpanSet`` instance

MEOS Functions:

intspanset_shift_scale

func (IntSpanSet) ShiftScale

func (g_iss IntSpanSet) ShiftScale(d int, w int) IntSpanSet

Return a new “IntSpanSet“ with the lower and upper bounds shifted by “delta“.

Args:

delta: The value to shift by

Returns:

A new ``IntSpanSet`` instance

MEOS Functions:

intspanset_shift_scale

func (IntSpanSet) SpanN

func (g_iss IntSpanSet) SpanN(n int) IntSpan

Returns the n-th span in IntSpanSet. Returns:

A IntSpan instance

MEOS Functions:

spanset_span_n

func (IntSpanSet) Spans

func (g_iss IntSpanSet) Spans() []IntSpan

Returns the list of spans in IntSpanSet. Returns:

A IntSpan instance

MEOS Functions:

spanset_spans

func (IntSpanSet) StartSpan

func (g_iss IntSpanSet) StartSpan() IntSpan

Returns the first span in spanset. Returns:

A IntSpan instance

MEOS Functions:

spanset_start_span

func (*IntSpanSet) Sub

func (g_iss *IntSpanSet) Sub(other interface{}) (*IntSpanSet, error)

func (IntSpanSet) ToFloatSpanSet

func (g_iss IntSpanSet) ToFloatSpanSet() FloatSpanSet

Converts IntSpanSet to a FloatSpanSet instance.

Returns:

A new FloatSpanSet instance

MEOS Functions:

intspanset_to_floatspanset

func (IntSpanSet) ToSpan

func (g_iss IntSpanSet) ToSpan() IntSpan

Returns a span that encompasses _inner.

Returns:

A new struct `IntSpan` instance

MEOS Functions:

spanset_span

func (*IntSpanSet) Union

func (g_iss *IntSpanSet) Union(other interface{}) (*IntSpanSet, error)

func (IntSpanSet) Width

func (g_iss IntSpanSet) Width(ignore_gap bool) int

Returns the width of the spanset. By default, i.e., when the second argument is False, the function takes into account the gaps within, i.e., returns the sum of the widths of the spans within. Otherwise, the function returns the width of the spanset ignoring any gap, i.e., the width from the lower bound of the first span to the upper bound of the last span.

Parameters:

ignore_gaps: Whether to take into account potential gaps in
the spanset.

Returns:

A `float` representing the duration of the spanset

MEOS Functions:

intspanset_width

type Interpolation

type Interpolation C.int

type NumSpan added in v0.1.10

type NumSpan interface {
	Span
	IsNumSpan() bool
}

type STBox

type STBox struct {
	// contains filtered or unexported fields
}

func GeoTimestamptzToSTBox added in v0.1.17

func GeoTimestamptzToSTBox(geom *Geom, t time.Time) *STBox

func GeoToSTBox added in v0.1.17

func GeoToSTBox(geom *Geom) *STBox

func STBoxCopy added in v0.1.17

func STBoxCopy(stbox *STBox) *STBox

func STBoxFromHexWKB added in v0.1.17

func STBoxFromHexWKB(s string) *STBox

STBoxFromHexWKB Return a temporal stbox from its hex-encoded ASCII Well-Known Binary (WKB) representation

func STBoxFromWKB added in v0.1.17

func STBoxFromWKB(wkb []byte) *STBox

STBoxFromWKB Return a temporal stbox from its Well-Known Binary (WKB) representation

func STBoxIn added in v0.1.17

func STBoxIn(s string) *STBox

func STBoxMake added in v0.1.17

func STBoxMake(hasx bool, hasz bool, geodetic bool, srid int, xmin float64, xmax float64, ymin float64, ymax float64, zmin float64, zmax float64, tstzspan *TsTzSpan) *STBox

func TPointExpandSpace added in v0.1.10

func TPointExpandSpace[TP TPoint](tp TP, other float64) *STBox

TPointExpandSpace Return the bounding box of a temporal point expanded on the spatial dimension

func TPointSTBoxes added in v0.1.10

func TPointSTBoxes[TP TPoint](tp TP, max_count int) ([]*STBox, error)

TPointSTBoxes Return an array of spatiotemporal boxes from the segments of a temporal point

Example
tf_seq := TGeomPointIn("{POINT(1 1)@2022-10-01 00:00:00+00, POINT(2 2)@2022-10-02 00:00:00+00}", &TGeomPointSeq{})
stboxes, _ := TPointSTBoxes(tf_seq, 100)
for i := 0; i < len(stboxes); i++ {
	fmt.Println(STBoxOut(stboxes[i], 10))
}
Output:

STBOX XT(((1,1),(1,1)),[2022-10-01 00:00:00+00, 2022-10-01 00:00:00+00])
STBOX XT(((2,2),(2,2)),[2022-10-02 00:00:00+00, 2022-10-02 00:00:00+00])

func TPointToSTBox

func TPointToSTBox[TP TPoint](tp TP) *STBox

TPointToSTBox Return a temporal point converted to a spatiotemporal box

Example
tg := TGeomPointIn("{POINT(1 1)@2022-10-01 00:00:00+00, POINT(2 2)@2022-10-02 00:00:00+00}", &TGeomPointSeq{})
stbox := TPointToSTBox(tg)
fmt.Println(STBoxOut(stbox, 10))
Output:

STBOX XT(((1,1),(2,2)),[2022-10-01 00:00:00+00, 2022-10-02 00:00:00+00])

func TimestamptzToSTBox added in v0.1.17

func TimestamptzToSTBox(t time.Time) *STBox

func TsTzSetToSTBox added in v0.1.17

func TsTzSetToSTBox(tstzset *TsTzSet) *STBox

func TsTzSpanSetToSTBox added in v0.1.17

func TsTzSpanSetToSTBox(tstzspanset *TsTzSpanSet) *STBox

func TsTzSpanToSTBox added in v0.1.17

func TsTzSpanToSTBox(tstzspan *TsTzSpan) *STBox

type Set

type Set interface {
	Inner() *C.Set
	Init(*C.Set)
}

type Span

type Span interface {
	Inner() *C.Span
	Init(*C.Span)
}

type SpanSet

type SpanSet interface {
	Inner() *C.SpanSet
	Init(*C.SpanSet)
}

type TBool

type TBool interface {
	Temporal
	IsTBool() bool
}

type TBoolInst

type TBoolInst struct {
	// contains filtered or unexported fields
}

func NewTBoolInst

func NewTBoolInst(tgmpi_in string) *TBoolInst

func TBoolInstMake added in v0.1.9

func TBoolInstMake(value bool, base time.Time) *TBoolInst

TBoolInstMake Return a temporal boolean instant from a boolean and a timestamptz

func TemporalToTBoolInst

func TemporalToTBoolInst[T Temporal](temp T) (*TBoolInst, error)

func (*TBoolInst) Init

func (tb *TBoolInst) Init(c_temp *C.Temporal)

func (*TBoolInst) Inner

func (tb *TBoolInst) Inner() *C.Temporal

func (*TBoolInst) IsTBool

func (tb *TBoolInst) IsTBool() bool

func (*TBoolInst) String

func (tb *TBoolInst) String() string

func (*TBoolInst) TBoolOut

func (tgmpi *TBoolInst) TBoolOut() string

func (*TBoolInst) Type

func (tb *TBoolInst) Type() string

type TBoolSeq

type TBoolSeq struct {
	// contains filtered or unexported fields
}

func NewTBoolSeq

func NewTBoolSeq(tgmpi_in string) *TBoolSeq

func TBoolSeqFromBaseTstzset added in v0.1.9

func TBoolSeqFromBaseTstzset(value bool, base TsTzSet) *TBoolSeq

TBoolSeqFromBaseTstzset Return a temporal boolean discrete sequence from a boolean and a timestamptz set

func TBoolSeqFromBaseTstzspan added in v0.1.9

func TBoolSeqFromBaseTstzspan(value bool, base TsTzSpan) *TBoolSeq

TBoolSeqFromBaseTstzspan Return a temporal boolean sequence from a boolean and a timestamptz span

func TemporalToTBoolSeq

func TemporalToTBoolSeq[T Temporal](temp T) (*TBoolSeq, error)

func (*TBoolSeq) Init

func (tb *TBoolSeq) Init(c_temp *C.Temporal)

func (*TBoolSeq) Inner

func (tb *TBoolSeq) Inner() *C.Temporal

func (*TBoolSeq) IsTBool

func (tb *TBoolSeq) IsTBool() bool

func (*TBoolSeq) IsTSequence

func (tb *TBoolSeq) IsTSequence() bool

func (*TBoolSeq) String

func (tb *TBoolSeq) String() string

func (*TBoolSeq) TBoolOut

func (tgmpi *TBoolSeq) TBoolOut() string

func (*TBoolSeq) Type

func (tb *TBoolSeq) Type() string

type TBoolSeqSet

type TBoolSeqSet struct {
	// contains filtered or unexported fields
}

func NewTBoolSeqSet

func NewTBoolSeqSet(tgmpi_in string) *TBoolSeqSet

func TBoolSeqSetFromBaseTstzspanset added in v0.1.9

func TBoolSeqSetFromBaseTstzspanset(value bool, base *TsTzSpanSet) *TBoolSeqSet

TBoolSeqSetFromBaseTstzspanset Return a temporal boolean sequence set from a boolean and a timestamptz span set

Example
tstzspanset := NewTsTzSpanSet("{[2023-01-01 08:00:00+00, 2023-01-02 08:00:00+00), (2023-01-03 10:00:00+00, 2023-01-04 12:00:00+00]}")
tss := TBoolSeqSetFromBaseTstzspanset(true, tstzspanset)
fmt.Println(TBoolOut(tss))
Output:

{[t@2023-01-01 08:00:00+00, t@2023-01-02 08:00:00+00), (t@2023-01-03 10:00:00+00, t@2023-01-04 12:00:00+00]}

func TemporalToTBoolSeqSet

func TemporalToTBoolSeqSet[T Temporal](temp T) (*TBoolSeqSet, error)

func (*TBoolSeqSet) Init

func (tb *TBoolSeqSet) Init(c_temp *C.Temporal)

func (*TBoolSeqSet) Inner

func (tb *TBoolSeqSet) Inner() *C.Temporal

func (*TBoolSeqSet) IsTBool

func (tb *TBoolSeqSet) IsTBool() bool

func (*TBoolSeqSet) String

func (tb *TBoolSeqSet) String() string

func (*TBoolSeqSet) TBoolOut

func (tgmpi *TBoolSeqSet) TBoolOut() string

func (*TBoolSeqSet) Type

func (tb *TBoolSeqSet) Type() string

type TBox

type TBox struct {
	// contains filtered or unexported fields
}

func FloatTimestamptzToTBox added in v0.1.11

func FloatTimestamptzToTBox(value float64, t time.Time) *TBox

FloatTimestamptzToTBox Return a temporal box from a float and a timestamptz

func FloatToTBox added in v0.1.11

func FloatToTBox(value float64) *TBox

FloatToTBox Return a float converted to a temporal box

func FloatTsTzSpanToTBox added in v0.1.11

func FloatTsTzSpanToTBox[S Span](value float64, span S) *TBox

FloatTsTzSpanToTBox Return a temporal box from a float and a timestamptz span

func IntTimestamptzToTBox added in v0.1.11

func IntTimestamptzToTBox(value int, t time.Time) *TBox

IntTimestamptzToTBox Return a temporal box from an integer and a timestamptz

func IntToTBox added in v0.1.11

func IntToTBox(value int) *TBox

IntToTBox Return an integer converted to a temporal box

func IntTsTzSpanToTBox added in v0.1.11

func IntTsTzSpanToTBox[S Span](value int, span S) *TBox

IntTsTzSpanToTBox Return a temporal box from an integer and a timestamptz span

func NumSpanTimestamptzToTBox added in v0.1.11

func NumSpanTimestamptzToTBox[S NumSpan](numspan S, t time.Time) *TBox

NumSpanTimestamptzToTBox Return a temporal box from a number span and a timestamptz

func NumSpanTsTzSpanToTBox added in v0.1.11

func NumSpanTsTzSpanToTBox[S NumSpan](numspan S, tstzspan *TsTzSpan) *TBox

NumSpanTsTzSpanToTBox Return a temporal box from a number span and a timestamptz span

func SetToTBox added in v0.1.11

func SetToTBox[S Set](s S) *TBox

SetToTBox Return a number set converted to a temporal box

func SpanSetToTBox added in v0.1.11

func SpanSetToTBox[S SpanSet](s S) *TBox

SpanSetToTBox Return a number spanset converted to a temporal box

func SpanToTBox added in v0.1.11

func SpanToTBox[S Span](s S) *TBox

SpanToTBox Return a number span converted to a temporal box

func TBoxCopy added in v0.1.11

func TBoxCopy(tbox *TBox) *TBox

TBoxCopy Return a copy of a temporal box

func TBoxFromHexWKB added in v0.1.11

func TBoxFromHexWKB(s string) *TBox

TBoxFromHexWKB Return a temporal box from its hex-encoded ASCII Well-Known Binary (WKB) representation

func TBoxFromWKB added in v0.1.11

func TBoxFromWKB(wkb []byte) *TBox

TBoxFromWKB Return a temporal box from its Well-Known Binary (WKB) representation

func TBoxIn added in v0.1.11

func TBoxIn(s string) *TBox

TBoxIn Return a temporal box from its Well-Known Text (WKT) representation

func TBoxMake added in v0.1.11

func TBoxMake[S Span](s S, ts *TsTzSpan) *TBox

TBoxMake Return a temporal box from a number span and a timestamptz span

func TNumberToTBox

func TNumberToTBox[TN TNumber](tn TN) *TBox

TNumberToTBox Return a temporal number converted to a temporal box

Example
tf_seq := TFloatIn("{1.2@2022-10-01, 2.3@2022-10-02,3.4@2022-10-03}", &TFloatSeq{})
tbox := TNumberToTBox(tf_seq)
fmt.Println(TBoxOut(tbox, 10))
Output:

TBOXFLOAT XT([1.2, 3.4],[2022-10-01 00:00:00+00, 2022-10-03 00:00:00+00])

func TimestamptzToTBox added in v0.1.11

func TimestamptzToTBox(ts time.Time) *TBox

TimestamptzToTBox Return a timestamptz converted to a temporal box

type TFloat

type TFloat interface {
	TNumber
	IsTFloat() bool
}

type TFloatInst

type TFloatInst struct {
	// contains filtered or unexported fields
}

func NewTFloatInst

func NewTFloatInst(tf_in string) *TFloatInst

func TFloatInstMake added in v0.1.9

func TFloatInstMake(value float64, base time.Time) *TFloatInst

TFloatInstMake Return a temporal float instant from a float and a timestamptz

func TemporalToTFloatInst

func TemporalToTFloatInst[T Temporal](temp T) (*TFloatInst, error)

func (*TFloatInst) Init

func (tf *TFloatInst) Init(c_temp *C.Temporal)

func (*TFloatInst) Inner

func (tf *TFloatInst) Inner() *C.Temporal

func (*TFloatInst) IsTFloat

func (tf *TFloatInst) IsTFloat() bool

func (*TFloatInst) IsTInstant

func (tf *TFloatInst) IsTInstant() bool

func (*TFloatInst) IsTNumber

func (tf *TFloatInst) IsTNumber() bool

func (*TFloatInst) String

func (tf *TFloatInst) String() string

func (*TFloatInst) TPointOut

func (tf *TFloatInst) TPointOut(maxdd int) string

func (*TFloatInst) Type

func (tf *TFloatInst) Type() string

type TFloatSeq

type TFloatSeq struct {
	// contains filtered or unexported fields
}

func NewTFloatSeq

func NewTFloatSeq(tf_in string) *TFloatSeq

func TFloatSeqFromBaseTstzset added in v0.1.9

func TFloatSeqFromBaseTstzset(value float64, base TsTzSet) *TFloatSeq

TFloatSeqFromBaseTstzset Return a temporal float discrete sequence from a float and a timestamptz set

func TFloatSeqFromBaseTstzspan added in v0.1.9

func TFloatSeqFromBaseTstzspan(value float64, base TsTzSpan, interp Interpolation) *TFloatSeq

TFloatSeqFromBaseTstzspan Return a temporal float sequence from a float and a timestamptz span

func TemporalToTFloatSeq

func TemporalToTFloatSeq[T Temporal](temp T) (*TFloatSeq, error)

func (*TFloatSeq) Init

func (tf *TFloatSeq) Init(c_temp *C.Temporal)

func (*TFloatSeq) Inner

func (tf *TFloatSeq) Inner() *C.Temporal

func (*TFloatSeq) IsTFloat

func (tf *TFloatSeq) IsTFloat() bool

func (*TFloatSeq) IsTNumber

func (tf *TFloatSeq) IsTNumber() bool

func (*TFloatSeq) IsTSequence

func (tf *TFloatSeq) IsTSequence() bool

func (*TFloatSeq) String

func (tf *TFloatSeq) String() string

func (*TFloatSeq) TPointOut

func (tf *TFloatSeq) TPointOut(maxdd int) string

func (*TFloatSeq) Type

func (tf *TFloatSeq) Type() string

type TFloatSeqSet

type TFloatSeqSet struct {
	// contains filtered or unexported fields
}

func NewTFloatSeqSet

func NewTFloatSeqSet(tf_in string) *TFloatSeqSet

func TFloatSeqSetFromBaseTstzspanset added in v0.1.9

func TFloatSeqSetFromBaseTstzspanset(value float64, base *TsTzSpanSet, interp Interpolation) *TFloatSeqSet

TFloatSeqSetFromBaseTstzspanset Return a temporal float sequence set from a float and a timestamptz span set

func TemporalToTFloatSeqSet

func TemporalToTFloatSeqSet[T Temporal](temp T) (*TFloatSeqSet, error)

func (*TFloatSeqSet) Init

func (tf *TFloatSeqSet) Init(c_temp *C.Temporal)

func (*TFloatSeqSet) Inner

func (tf *TFloatSeqSet) Inner() *C.Temporal

func (*TFloatSeqSet) IsTFloat

func (tf *TFloatSeqSet) IsTFloat() bool

func (*TFloatSeqSet) IsTNumber

func (tf *TFloatSeqSet) IsTNumber() bool

func (*TFloatSeqSet) String

func (tf *TFloatSeqSet) String() string

func (*TFloatSeqSet) TPointOut

func (tf *TFloatSeqSet) TPointOut(maxdd int) string

func (*TFloatSeqSet) Type

func (tf *TFloatSeqSet) Type() string

type TGeogPoint

type TGeogPoint interface {
	TPoint
	IsTGeogPoint() bool
}

type TGeogPointInst

type TGeogPointInst struct {
	// contains filtered or unexported fields
}

func NewTGeogPointInst

func NewTGeogPointInst(tgmpi_in string) *TGeogPointInst

func TemporalToTGeogPointInst

func TemporalToTGeogPointInst[T Temporal](temp T) (*TGeogPointInst, error)

func (*TGeogPointInst) Init

func (tgmpi *TGeogPointInst) Init(c_temp *C.Temporal)

func (*TGeogPointInst) Inner

func (tgmpi *TGeogPointInst) Inner() *C.Temporal

func (*TGeogPointInst) IsTGeogPoint

func (tgmpi *TGeogPointInst) IsTGeogPoint() bool

func (*TGeogPointInst) IsTInstant

func (tgmpi *TGeogPointInst) IsTInstant() bool

func (*TGeogPointInst) IsTPoint

func (tgmpi *TGeogPointInst) IsTPoint() bool

func (*TGeogPointInst) String

func (tgmpi *TGeogPointInst) String() string

func (*TGeogPointInst) TPointOut

func (tgmpi *TGeogPointInst) TPointOut(maxdd int) string

func (*TGeogPointInst) Type

func (tgmpi *TGeogPointInst) Type() string

type TGeogPointSeq

type TGeogPointSeq struct {
	// contains filtered or unexported fields
}

func NewTGeogPointSeq

func NewTGeogPointSeq(tgmpi_in string) TGeogPointSeq

func TemporalToTGeogPointSeq

func TemporalToTGeogPointSeq[T Temporal](temp T) (*TGeogPointSeq, error)

func (*TGeogPointSeq) Init

func (tgmpi *TGeogPointSeq) Init(c_temp *C.Temporal)

func (*TGeogPointSeq) Inner

func (tgmpi *TGeogPointSeq) Inner() *C.Temporal

func (*TGeogPointSeq) IsTGeogPoint

func (tgmpi *TGeogPointSeq) IsTGeogPoint() bool

func (*TGeogPointSeq) IsTPoint

func (tgmpi *TGeogPointSeq) IsTPoint() bool

func (*TGeogPointSeq) IsTSequence

func (tgmpi *TGeogPointSeq) IsTSequence() bool

func (*TGeogPointSeq) String

func (tgmpi *TGeogPointSeq) String() string

func (*TGeogPointSeq) TPointOut

func (tgmpi *TGeogPointSeq) TPointOut(maxdd int) string

func (*TGeogPointSeq) Type

func (tgmpi *TGeogPointSeq) Type() string

type TGeogPointSeqSet

type TGeogPointSeqSet struct {
	// contains filtered or unexported fields
}

func NewTGeogPointSeqSet

func NewTGeogPointSeqSet(tgmpi_in string) *TGeogPointSeqSet

func (*TGeogPointSeqSet) Init

func (tgmpi *TGeogPointSeqSet) Init(c_temp *C.Temporal)

func (*TGeogPointSeqSet) Inner

func (tgmpi *TGeogPointSeqSet) Inner() *C.Temporal

func (*TGeogPointSeqSet) IsTGeogPoint

func (tgmpi *TGeogPointSeqSet) IsTGeogPoint() bool

func (*TGeogPointSeqSet) IsTPoint

func (tgmpi *TGeogPointSeqSet) IsTPoint() bool

func (*TGeogPointSeqSet) String

func (tgmpi *TGeogPointSeqSet) String() string

func (*TGeogPointSeqSet) TPointOut

func (tgmpi *TGeogPointSeqSet) TPointOut(maxdd int) string

func (*TGeogPointSeqSet) Type

func (tgmpi *TGeogPointSeqSet) Type() string

type TGeomPoint

type TGeomPoint interface {
	TPoint
	IsTGeomPoint() bool
}

type TGeomPointInst

type TGeomPointInst struct {
	// contains filtered or unexported fields
}

func NewEmptyTGeomPointInst

func NewEmptyTGeomPointInst() TGeomPointInst

func NewTGeomPointInst

func NewTGeomPointInst(tgmpi_in string) TGeomPointInst

func NewTGeomPointInstInner

func NewTGeomPointInstInner(inner *C.Temporal) *TGeomPointInst

func TemporalToGeomPointInst

func TemporalToGeomPointInst[T Temporal](temp T) (*TGeomPointInst, error)

func (*TGeomPointInst) Init

func (tb *TGeomPointInst) Init(c_temp *C.Temporal)

func (*TGeomPointInst) Inner

func (tb *TGeomPointInst) Inner() *C.Temporal

func (*TGeomPointInst) IsTGeomPoint

func (tb *TGeomPointInst) IsTGeomPoint() bool

func (*TGeomPointInst) IsTInstant

func (tgmpi *TGeomPointInst) IsTInstant() bool

func (*TGeomPointInst) IsTPoint

func (tgmpi *TGeomPointInst) IsTPoint() bool

func (*TGeomPointInst) String

func (tgmpi *TGeomPointInst) String() string

func (*TGeomPointInst) TInstantOut

func (tgmpi *TGeomPointInst) TInstantOut(maxdd int) string

func (*TGeomPointInst) TPointOut

func (tgmpi *TGeomPointInst) TPointOut(maxdd int) string

func (*TGeomPointInst) TimestampOut

func (tgmpi *TGeomPointInst) TimestampOut() string

func (*TGeomPointInst) Timestamptz

func (tgmpi *TGeomPointInst) Timestamptz() time.Time

func (*TGeomPointInst) Type

func (tgmpi *TGeomPointInst) Type() string

type TGeomPointSeq

type TGeomPointSeq struct {
	// contains filtered or unexported fields
}

func NewTGeomPointSeq

func NewTGeomPointSeq(tgmpi_in string) *TGeomPointSeq

func NewTGeomPointSeqFromWKB

func NewTGeomPointSeqFromWKB(tgmpi_in string) *TGeomPointSeq

func TemporalToTGeomPointSeq

func TemporalToTGeomPointSeq[T Temporal](temp T) (*TGeomPointSeq, error)

func (*TGeomPointSeq) Init

func (tgmpi *TGeomPointSeq) Init(c_temp *C.Temporal)

func (*TGeomPointSeq) Inner

func (tgmpi *TGeomPointSeq) Inner() *C.Temporal

func (*TGeomPointSeq) IsTGeomPoint

func (tgmpi *TGeomPointSeq) IsTGeomPoint() bool

func (*TGeomPointSeq) IsTPoint

func (tgmpi *TGeomPointSeq) IsTPoint() bool

func (*TGeomPointSeq) IsTSequence

func (tgmpi *TGeomPointSeq) IsTSequence() bool

func (*TGeomPointSeq) NewInit

func (tgmpi *TGeomPointSeq) NewInit(c_temp *C.Temporal) *TGeomPointSeq

func (*TGeomPointSeq) String

func (tgmpi *TGeomPointSeq) String() string

func (*TGeomPointSeq) TPointOut

func (tgmpi *TGeomPointSeq) TPointOut(maxdd int) string

func (*TGeomPointSeq) Type

func (tgmpi *TGeomPointSeq) Type() string

type TGeomPointSeqSet

type TGeomPointSeqSet struct {
	// contains filtered or unexported fields
}

func NewTGeomPointSeqSet

func NewTGeomPointSeqSet(tgmpi_in string) *TGeomPointSeqSet

func TemporalToTGeomPointSeqSet

func TemporalToTGeomPointSeqSet[T Temporal](temp T) (*TGeomPointSeqSet, error)

func (*TGeomPointSeqSet) Init

func (tb *TGeomPointSeqSet) Init(c_temp *C.Temporal)

func (*TGeomPointSeqSet) Inner

func (tb *TGeomPointSeqSet) Inner() *C.Temporal

func (*TGeomPointSeqSet) IsTGeomPoint

func (tb *TGeomPointSeqSet) IsTGeomPoint() bool

func (*TGeomPointSeqSet) IsTPoint

func (tgmpi *TGeomPointSeqSet) IsTPoint() bool

func (*TGeomPointSeqSet) String

func (tgmpi *TGeomPointSeqSet) String() string

func (*TGeomPointSeqSet) TPointOut

func (tgmpi *TGeomPointSeqSet) TPointOut(maxdd int) string

func (*TGeomPointSeqSet) Type

func (tgmpi *TGeomPointSeqSet) Type() string

type TInstant

type TInstant interface {
	Temporal
	IsTInstant() bool
}

type TInt

type TInt interface {
	TNumber
	IsTInt() bool
}

type TIntInst

type TIntInst struct {
	// contains filtered or unexported fields
}

func NewTIntInst

func NewTIntInst(tf_in string) *TIntInst

func TIntInstMake added in v0.1.9

func TIntInstMake(value int, base time.Time) *TIntInst

TIntInstMake Return a temporal int instant from a int and a timestamptz

func TemporalToTIntInst

func TemporalToTIntInst[T Temporal](temp T) (*TIntInst, error)

func (*TIntInst) Init

func (tb *TIntInst) Init(c_temp *C.Temporal)

func (*TIntInst) Inner

func (tb *TIntInst) Inner() *C.Temporal

func (*TIntInst) IsTInt

func (tb *TIntInst) IsTInt() bool

func (*TIntInst) IsTNumber

func (tb *TIntInst) IsTNumber() bool

func (*TIntInst) String

func (tb *TIntInst) String() string

func (*TIntInst) TIntOut

func (tf *TIntInst) TIntOut() string

func (*TIntInst) Type

func (tb *TIntInst) Type() string

type TIntSeq

type TIntSeq struct {
	// contains filtered or unexported fields
}

func NewTIntSeq

func NewTIntSeq(tf_in string) *TIntSeq

func TIntSeqFromBaseTstzset added in v0.1.9

func TIntSeqFromBaseTstzset(value int, base TsTzSet) *TIntSeq

TIntSeqFromBaseTstzset Return a temporal int discrete sequence from a int and a timestamptz set

func TIntSeqFromBaseTstzspan added in v0.1.9

func TIntSeqFromBaseTstzspan(value int, base TsTzSpan) *TIntSeq

TIntSeqFromBaseTstzspan Return a temporal int sequence from a int and a timestamptz span

func TemporalToTIntSeq

func TemporalToTIntSeq[T Temporal](temp T) (*TIntSeq, error)

func (*TIntSeq) Init

func (tb *TIntSeq) Init(c_temp *C.Temporal)

func (*TIntSeq) Inner

func (tb *TIntSeq) Inner() *C.Temporal

func (*TIntSeq) IsTInt

func (tb *TIntSeq) IsTInt() bool

func (*TIntSeq) IsTNumber

func (tb *TIntSeq) IsTNumber() bool

func (*TIntSeq) IsTSequence

func (tb *TIntSeq) IsTSequence() bool

func (*TIntSeq) String

func (tb *TIntSeq) String() string

func (*TIntSeq) TIntOut

func (tf *TIntSeq) TIntOut() string

func (*TIntSeq) Type

func (tb *TIntSeq) Type() string

type TIntSeqSet

type TIntSeqSet struct {
	// contains filtered or unexported fields
}

func NewTIntSeqSet

func NewTIntSeqSet(tf_in string) *TIntSeqSet

func TIntSeqSetFromBaseTstzspanset added in v0.1.9

func TIntSeqSetFromBaseTstzspanset(value int, base *TsTzSpanSet) *TIntSeqSet

TIntSeqSetFromBaseTstzspanset Return a temporal int sequence set from a int and a timestamptz span set

func TemporalToTIntSeqSet

func TemporalToTIntSeqSet[T Temporal](temp T) (*TIntSeqSet, error)

func (*TIntSeqSet) Init

func (tb *TIntSeqSet) Init(c_temp *C.Temporal)

func (*TIntSeqSet) Inner

func (tb *TIntSeqSet) Inner() *C.Temporal

func (*TIntSeqSet) IsTInt

func (tb *TIntSeqSet) IsTInt() bool

func (*TIntSeqSet) IsTNumber

func (tb *TIntSeqSet) IsTNumber() bool

func (*TIntSeqSet) String

func (tb *TIntSeqSet) String() string

func (*TIntSeqSet) TIntOut

func (tf *TIntSeqSet) TIntOut() string

func (*TIntSeqSet) Type

func (tb *TIntSeqSet) Type() string

type TNumber

type TNumber interface {
	Temporal
	IsTNumber() bool
}

type TPoint

type TPoint interface {
	Temporal
	IsTPoint() bool
}

type TSequence

type TSequence interface {
	Temporal
	IsTSequence() bool
}

type TSequenceSet

type TSequenceSet interface {
	Temporal
	IsTSequenceSet() bool
}

type TText

type TText interface {
	Temporal
	IsTText() bool
}

type TTextInst

type TTextInst struct {
	// contains filtered or unexported fields
}

func TTextInstMake added in v0.1.10

func TTextInstMake(value string, base time.Time) *TTextInst

TTextInstMake Return a temporal text instant from a text and a timestamptz

func TemporalToTTextInst

func TemporalToTTextInst[T Temporal](temp T) (*TTextInst, error)

func (*TTextInst) Init

func (tb *TTextInst) Init(c_temp *C.Temporal)

func (*TTextInst) Inner

func (tb *TTextInst) Inner() *C.Temporal

func (*TTextInst) IsTText

func (tb *TTextInst) IsTText() bool

func (*TTextInst) String

func (tb *TTextInst) String() string

func (*TTextInst) TTextOut

func (tb *TTextInst) TTextOut() string

func (*TTextInst) Type

func (tb *TTextInst) Type() string

type TTextSeq

type TTextSeq struct {
	// contains filtered or unexported fields
}

func TTextSeqFromBaseTstzset added in v0.1.10

func TTextSeqFromBaseTstzset(value string, base TsTzSet) *TTextSeq

TTextSeqFromBaseTstzset Return a temporal text discrete sequence from a text and a timestamptz set

func TTextSeqFromBaseTstzspan added in v0.1.10

func TTextSeqFromBaseTstzspan(value string, base TsTzSpan) *TTextSeq

TTextSeqFromBaseTstzspan Return a temporal text sequence from a text and a timestamptz span

func TemporalToTTextSeq

func TemporalToTTextSeq[T Temporal](temp T) (*TTextSeq, error)

func (*TTextSeq) Init

func (tb *TTextSeq) Init(c_temp *C.Temporal)

func (*TTextSeq) Inner

func (tb *TTextSeq) Inner() *C.Temporal

func (*TTextSeq) IsTSequence

func (tb *TTextSeq) IsTSequence() bool

func (*TTextSeq) IsTText

func (tb *TTextSeq) IsTText() bool

func (*TTextSeq) String

func (tb *TTextSeq) String() string

func (*TTextSeq) TTextOut

func (tb *TTextSeq) TTextOut() string

func (*TTextSeq) Type

func (tb *TTextSeq) Type() string

type TTextSeqSet

type TTextSeqSet struct {
	// contains filtered or unexported fields
}

func TTextSeqSetFromBaseTstzspanset added in v0.1.10

func TTextSeqSetFromBaseTstzspanset(value string, base *TsTzSpanSet) *TTextSeqSet

TTextSeqSetFromBaseTstzspanset Return a temporal text sequence set from a text and a timestamptz span set

func TemporalToTTextSeqSet

func TemporalToTTextSeqSet[T Temporal](temp T) (*TTextSeqSet, error)

func (*TTextSeqSet) Init

func (tb *TTextSeqSet) Init(c_temp *C.Temporal)

func (*TTextSeqSet) Inner

func (tb *TTextSeqSet) Inner() *C.Temporal

func (*TTextSeqSet) IsTText

func (tb *TTextSeqSet) IsTText() bool

func (*TTextSeqSet) String

func (tb *TTextSeqSet) String() string

func (*TTextSeqSet) TTextOut

func (tb *TTextSeqSet) TTextOut() string

func (*TTextSeqSet) Type

func (tb *TTextSeqSet) Type() string

type Temporal

type Temporal interface {
	Inner() *C.Temporal
	Init(*C.Temporal)
	String() string
	Type() string
}

func AddFloatTFloat added in v0.1.10

func AddFloatTFloat[TF TFloat](value float64, tf TF) Temporal

AddFloatTFloat returns the temporal addition of a constant float and a temporal float.

func AddIntTInt added in v0.1.10

func AddIntTInt[TI TInt](value int, ti TI) Temporal

AddIntTInt returns the temporal addition of a constant integer and a temporal integer.

func AddTFloatFloat added in v0.1.10

func AddTFloatFloat[TF TFloat](tf TF, value float64) Temporal

AddTFloatFloat returns the temporal addition of a temporal float and a constant float.

func AddTIntInt added in v0.1.10

func AddTIntInt[TI TInt](ti TI, value int) Temporal

AddTIntInt returns the temporal addition of a temporal integer and a constant integer.

func AddTNumberTNumber added in v0.1.10

func AddTNumberTNumber[TN1 TNumber, TN2 TNumber](tn1 TN1, tn2 TN2) Temporal

AddTNumberTNumber Return the temporal addition of the temporal numbers

func BearingTPointPoint added in v0.1.10

func BearingTPointPoint[TP TPoint](tp TP, g *Geom, invert bool) Temporal

BearingTPointPoint Return the temporal bearing between a temporal point and a point

func BearingTPointTPoint added in v0.1.10

func BearingTPointTPoint[TP1 TPoint, TP2 TPoint](tp1 TP1, tp2 TP2) Temporal

BearingTPointTPoint Return the temporal bearing between two temporal points

func CreateTemporal

func CreateTemporal(inner *C.Temporal) Temporal

func CumulativeLength added in v0.1.10

func CumulativeLength[TP TPoint](tp TP) Temporal

CumulativeLength Returns the cumulative length of the trajectory.

func DistanceTFloatFloat added in v0.1.10

func DistanceTFloatFloat[TF TFloat](tf TF, value float64) Temporal

DistanceTFloatFloat returns the temporal distance between a temporal float and a constant float.

func DistanceTNumberTNumber added in v0.1.10

func DistanceTNumberTNumber[TN1 TNumber, TN2 TNumber](tn1 TN1, tn2 TN2) Temporal

DistanceTNumberTNumber returns the temporal distance between two temporal numbers.

func DistanceTPointPoint added in v0.1.10

func DistanceTPointPoint[TP TPoint](temp TP, gs *Geom) Temporal

func DistanceTPointTPoint added in v0.1.10

func DistanceTPointTPoint[TP1 TPoint, TP2 TPoint](temp1 TP1, temp2 TP2) Temporal

func DivFloatTFloat added in v0.1.10

func DivFloatTFloat[TF TFloat](value float64, tf TF) Temporal

DivFloatTFloat returns the temporal division of a constant float by a temporal float.

func DivIntTInt added in v0.1.10

func DivIntTInt[TI TInt](value int, ti TI) Temporal

DivIntTInt returns the temporal division of a constant integer by a temporal integer.

func DivTFloatFloat added in v0.1.10

func DivTFloatFloat[TF TFloat](tf TF, value float64) Temporal

DivTFloatFloat returns the temporal division of a temporal float by a constant float.

func DivTIntInt added in v0.1.10

func DivTIntInt[TI TInt](ti TI, value int) Temporal

DivTIntInt returns the temporal division of a temporal integer by a constant integer.

func DivTNumberTNumber added in v0.1.10

func DivTNumberTNumber[TN1 TNumber, TN2 TNumber](tn1 TN1, tn2 TN2) Temporal

DivTNumberTNumber returns the temporal division of two temporal numbers.

func MultFloatTFloat added in v0.1.10

func MultFloatTFloat[TF TFloat](value float64, tf TF) Temporal

MultFloatTFloat returns the temporal multiplication of a constant float and a temporal float.

func MultIntTInt added in v0.1.10

func MultIntTInt[TI TInt](value int, ti TI) Temporal

MultIntTInt returns the temporal multiplication of a constant integer and a temporal integer.

func MultTFloatFloat added in v0.1.10

func MultTFloatFloat[TF TFloat](tf TF, value float64) Temporal

MultTFloatFloat returns the temporal multiplication of a temporal float and a constant float.

func MultTIntInt added in v0.1.10

func MultTIntInt[TI TInt](ti TI, value int) Temporal

MultTIntInt returns the temporal multiplication of a temporal integer and a constant integer.

func MultTNumberTNumber added in v0.1.10

func MultTNumberTNumber[TN1 TNumber, TN2 TNumber](tn1 TN1, tn2 TN2) Temporal

MultTNumberTNumber returns the temporal multiplication of two temporal numbers.

func SubFloatTFloat added in v0.1.10

func SubFloatTFloat[TF TFloat](value float64, tf TF) Temporal

SubFloatTFloat returns the temporal subtraction of a constant float from a temporal float.

func SubIntTInt added in v0.1.10

func SubIntTInt[TI TInt](value int, ti TI) Temporal

SubIntTInt returns the temporal subtraction of a constant integer from a temporal integer.

func SubTFloatFloat added in v0.1.10

func SubTFloatFloat[TF TFloat](tf TF, value float64) Temporal

SubTFloatFloat returns the temporal subtraction of a temporal float and a constant float.

func SubTIntInt added in v0.1.10

func SubTIntInt[TI TInt](ti TI, value int) Temporal

SubTIntInt returns the temporal subtraction of a temporal integer and a constant integer.

func SubTNumberTNumber added in v0.1.10

func SubTNumberTNumber[TN1 TNumber, TN2 TNumber](tn1 TN1, tn2 TN2) Temporal

SubTNumberTNumber returns the temporal subtraction of two temporal numbers.

func TAndTBoolBool added in v0.1.9

func TAndTBoolBool[TB TBool](tb TB, value bool) Temporal

TAndTBoolBool Return the boolean and of a temporal boolean and a boolean

Example
tb1 := NewTBoolSeq("{TRUE@2022-10-01, TRUE@2022-10-02,TRUE@2022-10-03}")
tb2 := true
res := TAndTBoolBool(tb1, tb2)
fmt.Println(res.String())
Output:

{t@2022-10-01 00:00:00+00, t@2022-10-02 00:00:00+00, t@2022-10-03 00:00:00+00}

func TAndTBoolTBool added in v0.1.9

func TAndTBoolTBool[TB TBool](tb TB, other TB) Temporal

TAndTBoolTBool Return the boolean and of the temporal booleans

func TBoolAtValue

func TBoolAtValue[TB TBool](tb TB, value bool) Temporal

TBoolAtValue Return a temporal boolean restricted to a boolean

func TBoolMinusValue

func TBoolMinusValue[TB TBool](tb TB, value bool) Temporal

TBoolMinusValue Return a temporal boolean restricted to the complement of a boolean

func TContainsGeoTPoint added in v0.1.10

func TContainsGeoTPoint[TP TPoint](gs *Geom, temp TP, restr, atvalue bool) Temporal

func TDWithinTPointGeo added in v0.1.10

func TDWithinTPointGeo[TP TPoint](temp TP, gs *Geom, dist float64, restr, atvalue bool) Temporal

func TDWithinTPointTPoint added in v0.1.10

func TDWithinTPointTPoint[TP1 TPoint, TP2 TPoint](temp1 TP1, temp2 TP2, dist float64, restr, atvalue bool) Temporal

func TDisjointTPointGeo added in v0.1.10

func TDisjointTPointGeo[TP TPoint](temp TP, gs *Geom, restr, atvalue bool) Temporal

func TDisjointTPointTPoint added in v0.1.10

func TDisjointTPointTPoint[TP1 TPoint, TP2 TPoint](temp1 TP1, temp2 TP2, restr, atvalue bool) Temporal

func TEqTBoolBool added in v0.1.9

func TEqTBoolBool[TB TBool](tb TB, value bool) Temporal

TEqTBoolBool Return the temporal equality of a temporal boolean and a boolean

Example
tb1 := NewTBoolSeq("{FALSE@2022-10-01, FALSE@2022-10-02,FALSE@2022-10-03}")
tb2 := false
res := TEqTBoolBool(tb1, tb2)
fmt.Println(res.String())
Output:

{t@2022-10-01 00:00:00+00, t@2022-10-02 00:00:00+00, t@2022-10-03 00:00:00+00}

func TEqTFloatFloat added in v0.1.9

func TEqTFloatFloat[TF TFloat](tf TF, value float64) Temporal

TEqTFloatFloat Return a temporal value that represents where the temporal float is equal to a constant float.

func TEqTIntInt added in v0.1.9

func TEqTIntInt[TI TInt](ti TI, value int) Temporal

TEqTIntInt Return a temporal value that represents where the temporal integer is equal to a constant integer.

func TEqTPointPoint added in v0.1.10

func TEqTPointPoint[TP TPoint](temp TP, gs *Geom) Temporal

func TEqTTextText added in v0.1.10

func TEqTTextText[TT TText](tt TT, value string) Temporal

TEqTTextText Return a temporal value that represents where the temporal integer is equal to a constant text.

func TEqTemporalTemporal added in v0.1.9

func TEqTemporalTemporal[T1 Temporal, T2 Temporal](temp1 T1, temp2 T2) Temporal

TEqTemporalTemporal Return the temporal equality of two temporal values

Example
MeosInitialize("UTC")
tb1 := NewTBoolSeq("{FALSE@2022-10-01, FALSE@2022-10-02,FALSE@2022-10-03}")
tb2 := NewTBoolInst("TRUE@2022-10-01")
res := TEqTemporalTemporal(tb1, tb2)
fmt.Println(res)
Output:

f@2022-10-01 00:00:00+00

func TFloatAtValue added in v0.1.9

func TFloatAtValue[TF TFloat](tf TF, value float64) Temporal

TFloatAtValue Return a temporal float restricted to a float

func TFloatDerivative added in v0.1.9

func TFloatDerivative[TF TFloat](tf TF) Temporal

TFloatDerivative Return the derivative of a temporal number

func TFloatMinusValue added in v0.1.9

func TFloatMinusValue[TF TFloat](tf TF, value float64) Temporal

TFloatMinusValue Return a temporal float restricted to a float

func TFloatRound added in v0.1.9

func TFloatRound[TF TFloat](tf TF, max_decimals int) Temporal

TFloatRound Return a temporal float with the precision of the values set to a number of decimal places

func TFloatToDegrees added in v0.1.9

func TFloatToDegrees[TF TFloat](tf TF, normalize bool) Temporal

TFloatToDegrees Return a temporal number transformed from radians to degrees

func TFloatToRadians added in v0.1.9

func TFloatToRadians[TF TFloat](tf TF) Temporal

TFloatToRadians Return a temporal number transformed from degrees to radians

func TGeTFloatFloat added in v0.1.9

func TGeTFloatFloat[TF TFloat](tf TF, value float64) Temporal

TGeTFloatFloat Return a temporal value that represents where the temporal float is greater than or equal to a constant float.

func TGeTIntInt added in v0.1.9

func TGeTIntInt[TI TInt](ti TI, value int) Temporal

TGeTIntInt Return a temporal value that represents where the temporal integer is greater than or equal to a constant integer.

func TGeTTextText added in v0.1.10

func TGeTTextText[TT TText](tt TT, value string) Temporal

TGeTTextText Return a temporal value that represents where the temporal integer is greater than or equal to a constant text.

func TGtTFloatFloat added in v0.1.9

func TGtTFloatFloat[TF TFloat](tf TF, value float64) Temporal

TGtTFloatFloat Return a temporal value that represents where the temporal float is greater than a constant float.

func TGtTIntInt added in v0.1.9

func TGtTIntInt[TI TInt](ti TI, value int) Temporal

TGtTIntInt Return a temporal value that represents where the temporal integer is greater than a constant integer.

func TGtTTextText added in v0.1.10

func TGtTTextText[TT TText](tt TT, value string) Temporal

TGtTTextText Return a temporal value that represents where the temporal integer is greater than a constant text.

func TIntAtValue added in v0.1.9

func TIntAtValue[TI TInt](tf TI, value int) Temporal

TIntAtValue Return a temporal int restricted to a int

func TIntMinusValue added in v0.1.9

func TIntMinusValue[TI TInt](tf TI, value int) Temporal

TIntMinusValue Return a temporal int restricted to a int

func TIntersectsTPointGeo added in v0.1.10

func TIntersectsTPointGeo[TP TPoint](temp TP, gs *Geom, restr, atvalue bool) Temporal

func TIntersectsTPointTPoint added in v0.1.10

func TIntersectsTPointTPoint[TP1 TPoint, TP2 TPoint](temp1 TP1, temp2 TP2, restr, atvalue bool) Temporal

func TLeTFloatFloat added in v0.1.9

func TLeTFloatFloat[TF TFloat](tf TF, value float64) Temporal

TLeTFloatFloat Return a temporal value that represents where the temporal float is less than or equal to a constant float.

func TLeTIntInt added in v0.1.9

func TLeTIntInt[TI TInt](ti TI, value int) Temporal

TLeTIntInt Return a temporal value that represents where the temporal integer is less than or equal to a constant integer.

func TLeTTextText added in v0.1.10

func TLeTTextText[TT TText](tt TT, value string) Temporal

TLeTTextText Return a temporal value that represents where the temporal integer is less than or equal to a constant text.

func TLtTFloatFloat added in v0.1.9

func TLtTFloatFloat[TF TFloat](tf TF, value float64) Temporal

TLtTFloatFloat Return a temporal value that represents where the temporal float is less than a constant float.

func TLtTIntInt added in v0.1.9

func TLtTIntInt[TI TInt](ti TI, value int) Temporal

TLtTIntInt Return a temporal value that represents where the temporal integer is less than a constant integer.

func TLtTTextText added in v0.1.10

func TLtTTextText[TT TText](tt TT, value string) Temporal

TLtTTextText Return a temporal value that represents where the temporal integer is less than a constant text.

func TNEqTBoolBool added in v0.1.9

func TNEqTBoolBool[TB TBool](tb TB, value bool) Temporal

TNEqTBoolBool Return the temporal equality of a temporal boolean and a boolean

Example
tb1 := NewTBoolSeq("{FALSE@2022-10-01, FALSE@2022-10-02,FALSE@2022-10-03}")
tb2 := false
res := TNEqTBoolBool(tb1, tb2)
fmt.Println(res.String())
Output:

{f@2022-10-01 00:00:00+00, f@2022-10-02 00:00:00+00, f@2022-10-03 00:00:00+00}

func TNEqTemporalTemporal added in v0.1.9

func TNEqTemporalTemporal[T1 Temporal, T2 Temporal](temp1 T1, temp2 T2) Temporal

TNEqTemporalTemporal Return the temporal equality of two temporal values

Example
MeosInitialize("UTC")
tb1 := NewTBoolSeq("{FALSE@2022-10-01, FALSE@2022-10-02,FALSE@2022-10-03}")
tb2 := NewTBoolInst("TRUE@2022-10-01")
res := TNEqTemporalTemporal(tb1, tb2)
fmt.Println(res)
Output:

t@2022-10-01 00:00:00+00

func TNeTFloatFloat added in v0.1.9

func TNeTFloatFloat[TF TFloat](tf TF, value float64) Temporal

TNeTFloatFloat Return a temporal value that represents where the temporal float is not equal to a constant float.

func TNeTIntInt added in v0.1.9

func TNeTIntInt[TI TInt](ti TI, value int) Temporal

TNeTIntInt Return a temporal value that represents where the temporal integer is not equal to a constant integer.

func TNeTPointPoint added in v0.1.10

func TNeTPointPoint[TP TPoint](temp TP, gs *Geom) Temporal

func TNeTTextText added in v0.1.10

func TNeTTextText[TT TText](tt TT, value string) Temporal

TNeTTextText Return a temporal value that represents where the temporal integer is not equal to a constant text.

func TNumberAtSpan added in v0.1.9

func TNumberAtSpan[TN TNumber, S Span](tn TN, span S) Temporal

TNumberAtSpan Return a temporal value restricted to a span of base values

func TNumberAtSpanSet added in v0.1.9

func TNumberAtSpanSet[TN TNumber, SS SpanSet](tn TN, spanset SS) Temporal

TNumberAtSpanSet Return a temporal value restricted to an array of spans of base values

func TNumberAtTBox added in v0.1.9

func TNumberAtTBox[TN TNumber](tn TN, tbox *TBox) Temporal

TNumberAtTBox Return a temporal number restricted to a temporal box

func TNumberDeltaValue added in v0.1.10

func TNumberDeltaValue[TN TNumber](tn TN) Temporal

TNumberDeltaValue Return the delta value of a temporal number

func TNumberMinusSpan added in v0.1.9

func TNumberMinusSpan[TN TNumber, S Span](tn TN, span S) Temporal

TNumberMinusSpan Return a temporal value restricted to the complement of a span of base values

func TNumberMinusSpanSet added in v0.1.9

func TNumberMinusSpanSet[TN TNumber, SS SpanSet](tn TN, spanset SS) Temporal

TNumberMinusSpanSet Return a temporal value restricted to the complement of an array of spans of base values

func TNumberMinusTBox added in v0.1.9

func TNumberMinusTBox[TN TNumber](tn TN, tbox *TBox) Temporal

TNumberMinusTBox Return a temporal number restricted to a temporal box

func TOrTBoolBool added in v0.1.9

func TOrTBoolBool[TB TBool](tb TB, value bool) Temporal

TOrTBoolBool Return the boolean or of a temporal boolean and a boolean

func TOrTBoolTBool added in v0.1.9

func TOrTBoolTBool[TB TBool](tb TB, other TB) Temporal

TOrTBoolTBool Return the boolean or of the temporal booleans

func TPointAngularDifference added in v0.1.10

func TPointAngularDifference[TP TPoint](tp TP) Temporal

TPointAngularDifference Return the temporal angular difference of a temporal geometry point

func TPointAtStbox added in v0.1.10

func TPointAtStbox[TP TPoint](tp TP, stbox *STBox, border_inc bool) Temporal

TPointAtStbox Return a temporal point restricted to a spatiotemporal box

func TPointAtValue added in v0.1.10

func TPointAtValue[TP TPoint](tp TP, value *Geom) Temporal

TPointAtValue Return a temporal point restricted to a point

func TPointAzimuth added in v0.1.10

func TPointAzimuth[TP TPoint](tp TP) Temporal

TPointAzimuth Return the temporal azimuth of a temporal geometry point

func TPointGetX added in v0.1.10

func TPointGetX[TP TPoint](tp TP) Temporal

TPointGetX Returns the x coordinate of the temporal point.

func TPointGetY added in v0.1.10

func TPointGetY[TP TPoint](tp TP) Temporal

TPointGetY Returns the y coordinate of the temporal point.

func TPointGetZ added in v0.1.10

func TPointGetZ[TP TPoint](tp TP) Temporal

TPointGetZ Returns the z coordinate of the temporal point.

func TPointMinusStbox added in v0.1.10

func TPointMinusStbox[TP TPoint](tp TP, stbox *STBox, border_inc bool) Temporal

TPointMinusStbox Return a temporal point minus a spatiotemporal box

func TPointMinusValue added in v0.1.10

func TPointMinusValue[TP TPoint](tp TP, value *Geom) Temporal

TPointMinusValue Return a temporal point minus a point

func TPointRound added in v0.1.10

func TPointRound[TP TPoint](tp TP, max_decimals int) Temporal

TPointRound Return a temporal point with the precision of the coordinates set to a number of decimal

func TPointSpeed

func TPointSpeed[TP TPoint](tp TP) Temporal

TPointSpeed Returns the speed of the temporal point.

func TTextAtValue added in v0.1.10

func TTextAtValue[TT TText](tt TT, value string) Temporal

TTextAtValue Return a temporal int restricted to a string

func TTextMinusValue added in v0.1.10

func TTextMinusValue[TT TText](tt TT, value string) Temporal

TTextMinusValue Return a temporal int restricted to a string

func TTouchesTPointGeo added in v0.1.10

func TTouchesTPointGeo[TP TPoint](temp TP, gs *Geom, restr, atvalue bool) Temporal

func TemporalAppendTInstant added in v0.1.10

func TemporalAppendTInstant[T Temporal, TI TInstant](temp T, inst TI, max_dist float64, max_time timeutil.Timedelta, expand bool) Temporal

TemporalAppendTInstant Append an instant to a temporal value

func TemporalAppendTSequence added in v0.1.10

func TemporalAppendTSequence[T Temporal, TS TSequence](temp T, seq TS, expand bool) Temporal

TemporalAppendTSequence Append a sequence to a temporal value

func TemporalAtMax

func TemporalAtMax[T Temporal](temp T) Temporal

TemporalAtMax Return a temporal value restricted to its maximum base value

func TemporalAtMin

func TemporalAtMin[T Temporal](temp T) Temporal

TemporalAtMin Return a temporal value restricted to its minimum base value

func TemporalAtTimestamptz

func TemporalAtTimestamptz[T Temporal](temp T, ts time.Time) Temporal

TemporalAtTimestamptz Return a temporal value restricted to a timestamptz

func TemporalAtTsTzSet

func TemporalAtTsTzSet[T Temporal](temp T, tstzset TsTzSet) Temporal

TemporalAtTsTzSet Return a temporal value restricted to a timestamptz set

func TemporalAtTsTzSpan

func TemporalAtTsTzSpan[T Temporal](temp T, tstzspan TsTzSpan) Temporal

TemporalAtTsTzSpan Return a temporal value restricted to a timestamptz span

func TemporalAtTsTzSpanSet

func TemporalAtTsTzSpanSet[T Temporal](temp T, tstzspanset TsTzSpanSet) Temporal

TemporalAtTsTzSpanSet Return a temporal value restricted to a timestamptz span set

func TemporalAtValues

func TemporalAtValues[T Temporal, S Set](temp T, set S) Temporal

TemporalAtValues Return a temporal value restricted to a set of values

func TemporalDeleteTimestamptz added in v0.1.10

func TemporalDeleteTimestamptz[T Temporal](temp T, ts time.Time, connect bool) Temporal

TemporalDeleteTimestamptz Delete a timestamp from a temporal value

func TemporalDeleteTsTzSet added in v0.1.10

func TemporalDeleteTsTzSet[T Temporal](temp T, set TsTzSet, connect bool) Temporal

TemporalDeleteTsTzSet Delete a timestamp set from a temporal value connecting the instants before and after the given timestamp, if any

func TemporalDeleteTsTzSpan added in v0.1.10

func TemporalDeleteTsTzSpan[T Temporal](temp T, span TsTzSpan, connect bool) Temporal

TemporalDeleteTsTzSpan Delete a timestamptz span from a temporal value

func TemporalDeleteTsTzSpanSet added in v0.1.10

func TemporalDeleteTsTzSpanSet[T Temporal](temp T, spanset TsTzSpanSet, connect bool) Temporal

TemporalDeleteTsTzSpanSet Delete a timestamptz span set from a temporal value

func TemporalFromWKB added in v0.1.10

func TemporalFromWKB(wkb []byte) Temporal

TemporalFromWKB Return a temporal value from its Well-Known Binary (WKB) representation

func TemporalInsert added in v0.1.10

func TemporalInsert[T1 Temporal, T2 Temporal](temp1 T1, temp2 T2, connect bool) Temporal

TemporalInsert Insert the second temporal value into the first one

func TemporalMinusMax

func TemporalMinusMax[T Temporal](temp T) Temporal

TemporalMinusMax Return a temporal value restricted to the complement of its maximum base value

func TemporalMinusMin

func TemporalMinusMin[T Temporal](temp T) Temporal

TemporalMinusMin Return a temporal value restricted to the complement of its minimum base value

func TemporalMinusTimestamptz

func TemporalMinusTimestamptz[T Temporal](temp T, ts time.Time) Temporal

TemporalMinusTimestamptz Return a temporal value restricted to the complement of a timestamptz

func TemporalMinusTsTzSet

func TemporalMinusTsTzSet[T Temporal](temp T, tstzset TsTzSet) Temporal

TemporalMinusTsTzSet Return a temporal value restricted to the complement of a timestamptz set

func TemporalMinusTsTzSpan

func TemporalMinusTsTzSpan[T Temporal](temp T, tstzspan TsTzSpan) Temporal

TemporalMinusTsTzSpan Return a temporal value restricted to the complement of a timestamptz span

func TemporalMinusTsTzSpanSet

func TemporalMinusTsTzSpanSet[T Temporal](temp T, tstzspanset TsTzSpanSet) Temporal

TemporalMinusTsTzSpanSet Return a temporal value restricted to the complement of a timestamptz span set

func TemporalTPrecision added in v0.1.10

func TemporalTPrecision[T Temporal](temp T, duration timeutil.Timedelta, start time.Time) Temporal

TemporalTPrecision Return a temporal value with the precision set to period buckets

func TemporalTSample added in v0.1.10

func TemporalTSample[T Temporal](temp T, duration timeutil.Timedelta, start time.Time, interp Interpolation) Temporal

TemporalTSample Return a temporal value sampled according to period buckets

func TemporalUpdate added in v0.1.10

func TemporalUpdate[T1 Temporal, T2 Temporal](temp1 T1, temp2 T2, connect bool) Temporal

TemporalUpdate Update the first temporal value with the second one

func TextcatTTextTText added in v0.1.10

func TextcatTTextTText[TT1 TText, TT2 TText](tt1 TT1, tt2 TT2) Temporal

TextcatTTextTText Return the concatenation of two temporal text values

func TextcatTTextText added in v0.1.10

func TextcatTTextText[TT TText](tt TT, value string) Temporal

Return the concatenation of a temporal text and a text

type TsTzSet

type TsTzSet struct {
	// contains filtered or unexported fields
}

func NewTsTzSet

func NewTsTzSet(g_tts_in string) *TsTzSet

func (*TsTzSet) Duration

func (g_tts *TsTzSet) Duration() timeutil.Timedelta

func (*TsTzSet) ElementN

func (g_tss *TsTzSet) ElementN(n int) time.Time

func (*TsTzSet) Elements

func (g_tss *TsTzSet) Elements() []time.Time

func (*TsTzSet) EndElement

func (g_tts *TsTzSet) EndElement() time.Time

func (*TsTzSet) NumElements

func (g_tss *TsTzSet) NumElements() int

func (*TsTzSet) Scale

func (g_tss *TsTzSet) Scale(duration interface{}) (*TsTzSet, error)

func (*TsTzSet) Shift

func (g_tss *TsTzSet) Shift(delta interface{}) (*TsTzSet, error)

func (*TsTzSet) ShiftScale

func (g_tss *TsTzSet) ShiftScale(shift interface{}, duration interface{}) (*TsTzSet, error)

func (*TsTzSet) StartElement

func (g_tts *TsTzSet) StartElement() time.Time

func (*TsTzSet) TsTzSetOut

func (g_tts *TsTzSet) TsTzSetOut() string

type TsTzSpan

type TsTzSpan struct {
	// contains filtered or unexported fields
}

func NewTsTzSpan

func NewTsTzSpan(g_tts_in string) *TsTzSpan

func STBoxToTsTzSpan added in v0.1.17

func STBoxToTsTzSpan(stbox *STBox) *TsTzSpan

func TBoxToTsTzSpan added in v0.1.11

func TBoxToTsTzSpan(tbox *TBox) *TsTzSpan

TBoxToTsTzSpan Return a spatiotemporal box converted to a timestamptz span

func TemporalToTsTzSpan

func TemporalToTsTzSpan[T Temporal](temp T) *TsTzSpan

TemporalToTsTzSpan Return the bounding period of a temporal value

func (*TsTzSpan) Duration

func (g_tts *TsTzSpan) Duration() timeutil.Timedelta

func (*TsTzSpan) Lower

func (g_tts *TsTzSpan) Lower() time.Time

func (*TsTzSpan) Scale

func (g_tss *TsTzSpan) Scale(duration interface{}) (*TsTzSpan, error)

func (*TsTzSpan) Shift

func (g_tss *TsTzSpan) Shift(delta interface{}) (*TsTzSpan, error)

func (*TsTzSpan) ShiftScale

func (g_tss *TsTzSpan) ShiftScale(shift interface{}, duration interface{}) (*TsTzSpan, error)

func (*TsTzSpan) ToSpanSet

func (g_tts *TsTzSpan) ToSpanSet() TsTzSpanSet

func (*TsTzSpan) TsTzSpanOut

func (g_tts *TsTzSpan) TsTzSpanOut() string

func (*TsTzSpan) Upper

func (g_tts *TsTzSpan) Upper() time.Time

type TsTzSpanSet

type TsTzSpanSet struct {
	// contains filtered or unexported fields
}

func NewTsTzSpanSet

func NewTsTzSpanSet(g_tts_in string) *TsTzSpanSet

func TBoolWhenTrue added in v0.1.9

func TBoolWhenTrue[TB TBool](tb TB) TsTzSpanSet

TBoolWhenTrue Return the time when the temporal boolean has value true

Example
tb1 := NewTBoolSeq("{TRUE@2022-10-01, FALSE@2022-10-02,TRUE@2022-10-03}")
res := TBoolWhenTrue(tb1)
fmt.Println(res.TsTzSpanSetOut())
Output:

{[2022-10-01 00:00:00+00, 2022-10-01 00:00:00+00], [2022-10-03 00:00:00+00, 2022-10-03 00:00:00+00]}

func TemporalTime

func TemporalTime[T Temporal](temp T) *TsTzSpanSet

TemporalTime Return the time frame of a temporal value as a span set

func (*TsTzSpanSet) Duration

func (g_tts *TsTzSpanSet) Duration(ignore_gap bool) timeutil.Timedelta

func (*TsTzSpanSet) EndSpan

func (g_tts *TsTzSpanSet) EndSpan() TsTzSpan

func (*TsTzSpanSet) EndTimestamp

func (g_tts *TsTzSpanSet) EndTimestamp() time.Time

func (*TsTzSpanSet) NumSpans

func (g_tts *TsTzSpanSet) NumSpans() int

func (*TsTzSpanSet) NumTimestamps

func (g_tts *TsTzSpanSet) NumTimestamps() int

func (*TsTzSpanSet) Scale

func (g_tts *TsTzSpanSet) Scale(duration interface{}) (*TsTzSpanSet, error)

func (*TsTzSpanSet) Shift

func (g_tts *TsTzSpanSet) Shift(delta interface{}) (*TsTzSpanSet, error)

func (*TsTzSpanSet) ShiftScale

func (g_tts *TsTzSpanSet) ShiftScale(shift interface{}, duration interface{}) (*TsTzSpanSet, error)

func (*TsTzSpanSet) SpanN

func (g_tts *TsTzSpanSet) SpanN(n int) TsTzSpan

func (*TsTzSpanSet) Spans

func (g_tts *TsTzSpanSet) Spans() []TsTzSpan

func (*TsTzSpanSet) StartSpan

func (g_tts *TsTzSpanSet) StartSpan() TsTzSpan

func (*TsTzSpanSet) StartTimestamp

func (g_tts *TsTzSpanSet) StartTimestamp() time.Time

func (*TsTzSpanSet) TimestampN

func (g_tts *TsTzSpanSet) TimestampN(n int) time.Time

func (*TsTzSpanSet) Timestamps

func (g_tts *TsTzSpanSet) Timestamps() []time.Time

func (*TsTzSpanSet) ToSpan

func (g_tts *TsTzSpanSet) ToSpan() *TsTzSpan

func (*TsTzSpanSet) ToTsTzSpan

func (g_tts *TsTzSpanSet) ToTsTzSpan() *TsTzSpan

func (*TsTzSpanSet) TsTzSpanSetOut

func (g_tts *TsTzSpanSet) TsTzSpanSetOut() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL