Appearance
meos.js / TBox
Class: TBox
Defined in: core/types/boxes/TBox.ts:87
A temporal bounding box with an optional numeric (X) dimension and an optional temporal (T) dimension.
A TBox may have either or both dimensions:
- X-only: numeric range (integer or float span).
- T-only: timestamp range.
- XT: both numeric and temporal ranges.
MEOS outputs TBOXFLOAT X(...) for float-typed X dimensions and TBOX X(...) for integer ones.
Example
ts
const b = TBox.fromString('TBOXFLOAT XT([1.5, 10.5],[2020-01-01, 2020-12-31])');
console.log(b.hasX()); // true
console.log(b.hasT()); // true
console.log(b.xmin()); // 1.5
b.free();Constructors
Constructor
ts
new TBox(inner): TBox;Defined in: core/types/boxes/TBox.ts:90
Parameters
inner
number
Returns
TBox
Accessors
inner
Get Signature
ts
get inner(): number;Defined in: core/types/boxes/TBox.ts:99
Raw WASM heap pointer. Do not free this value directly; use free.
Returns
number
Methods
[dispose]()
ts
dispose: void;Defined in: core/types/boxes/TBox.ts:109
Implements the using resource-management protocol — calls free automatically.
Returns
void
asHexWKB()
ts
asHexWKB(variant?): string;Defined in: core/types/boxes/TBox.ts:270
Serialises this box to a hex-encoded WKB string.
Parameters
variant?
number = 4
WKB encoding variant (default 4 = Extended WKB).
Returns
string
cmp()
ts
cmp(other): number;Defined in: core/types/boxes/TBox.ts:575
Returns the MEOS total ordering comparison result.
Parameters
other
TBox
Returns
number
-1 if this < other, 0 if equal, 1 if this > other.
contains()
ts
contains(other): boolean;Defined in: core/types/boxes/TBox.ts:356
true if this entirely contains other.
Parameters
other
TBox
Returns
boolean
copy()
ts
copy(): TBox;Defined in: core/types/boxes/TBox.ts:117
Returns a deep copy of this box. The caller is responsible for calling free on the returned copy.
Returns
TBox
eq()
ts
eq(other): boolean;Defined in: core/types/boxes/TBox.ts:542
true if this and other are identical in both dimensions.
Parameters
other
TBox
Returns
boolean
expandFloat()
ts
expandFloat(d): TBox;Defined in: core/types/boxes/TBox.ts:485
Returns a new box with the float X dimension expanded by d on each side.
Parameters
d
number
Amount to add to each end.
Returns
TBox
expandInt()
ts
expandInt(i): TBox;Defined in: core/types/boxes/TBox.ts:477
Returns a new box with the integer X dimension expanded by i on each side. Requires an integer-typed TBox (built from an IntSpan); throws for float boxes.
Parameters
i
number
Number of integers to add to each end.
Returns
TBox
expandTime()
ts
expandTime(interval): TBox;Defined in: core/types/boxes/TBox.ts:524
Returns a new box with the T dimension expanded by the given interval on each side.
Parameters
interval
number
Raw WASM pointer to a MEOS interval.
Returns
TBox
free()
ts
free(): void;Defined in: core/types/boxes/TBox.ts:104
Releases the WASM-allocated memory. Must be called when the object is no longer needed.
Returns
void
ge()
ts
ge(other): boolean;Defined in: core/types/boxes/TBox.ts:567
true if this is greater than or equal to other in MEOS total ordering.
Parameters
other
TBox
Returns
boolean
gt()
ts
gt(other): boolean;Defined in: core/types/boxes/TBox.ts:562
true if this is strictly greater than other in MEOS total ordering.
Parameters
other
TBox
Returns
boolean
hash()
ts
hash(): number;Defined in: core/types/boxes/TBox.ts:284
Returns a 32-bit integer hash of this box.
Returns
number
hasT()
ts
hasT(): boolean;Defined in: core/types/boxes/TBox.ts:294
true if this box has a temporal (T) dimension.
Returns
boolean
hasX()
ts
hasX(): boolean;Defined in: core/types/boxes/TBox.ts:289
true if this box has a numeric (X) dimension.
Returns
boolean
intersection()
ts
intersection(other): TBox | null;Defined in: core/types/boxes/TBox.ts:426
Returns the intersection of this and other, or null if they are disjoint. The caller is responsible for calling free on the result.
Parameters
other
TBox
Returns
TBox | null
isAdjacent()
ts
isAdjacent(other): boolean;Defined in: core/types/boxes/TBox.ts:346
true if this and other share exactly one boundary point without overlapping.
Parameters
other
TBox
Returns
boolean
isAfter()
ts
isAfter(other): boolean;Defined in: core/types/boxes/TBox.ts:409
true if this is entirely after other on the temporal axis.
Parameters
other
TBox
Returns
boolean
isBefore()
ts
isBefore(other): boolean;Defined in: core/types/boxes/TBox.ts:399
true if this is entirely before other on the temporal axis.
Parameters
other
TBox
Returns
boolean
isContainedIn()
ts
isContainedIn(other): boolean;Defined in: core/types/boxes/TBox.ts:351
true if this is entirely contained within other.
Parameters
other
TBox
Returns
boolean
isLeft()
ts
isLeft(other): boolean;Defined in: core/types/boxes/TBox.ts:375
true if this is entirely to the left of other on the numeric axis.
Parameters
other
TBox
Returns
boolean
isOverOrAfter()
ts
isOverOrAfter(other): boolean;Defined in: core/types/boxes/TBox.ts:414
true if this does not extend before other on the temporal axis.
Parameters
other
TBox
Returns
boolean
isOverOrBefore()
ts
isOverOrBefore(other): boolean;Defined in: core/types/boxes/TBox.ts:404
true if this does not extend after other on the temporal axis.
Parameters
other
TBox
Returns
boolean
isOverOrLeft()
ts
isOverOrLeft(other): boolean;Defined in: core/types/boxes/TBox.ts:380
true if this does not extend to the right of other on the numeric axis.
Parameters
other
TBox
Returns
boolean
isOverOrRight()
ts
isOverOrRight(other): boolean;Defined in: core/types/boxes/TBox.ts:390
true if this does not extend to the left of other on the numeric axis.
Parameters
other
TBox
Returns
boolean
isRight()
ts
isRight(other): boolean;Defined in: core/types/boxes/TBox.ts:385
true if this is entirely to the right of other on the numeric axis.
Parameters
other
TBox
Returns
boolean
isSame()
ts
isSame(other): boolean;Defined in: core/types/boxes/TBox.ts:366
true if this and other cover the same space (same bounds and inclusivity).
Parameters
other
TBox
Returns
boolean
le()
ts
le(other): boolean;Defined in: core/types/boxes/TBox.ts:557
true if this is less than or equal to other in MEOS total ordering.
Parameters
other
TBox
Returns
boolean
lt()
ts
lt(other): boolean;Defined in: core/types/boxes/TBox.ts:552
true if this is strictly less than other in MEOS total ordering.
Parameters
other
TBox
Returns
boolean
ne()
ts
ne(other): boolean;Defined in: core/types/boxes/TBox.ts:547
true if this and other differ in at least one dimension.
Parameters
other
TBox
Returns
boolean
overlaps()
ts
overlaps(other): boolean;Defined in: core/types/boxes/TBox.ts:361
true if this and other share at least one point.
Parameters
other
TBox
Returns
boolean
round()
ts
round(maxdd): TBox;Defined in: core/types/boxes/TBox.ts:493
Returns a new box with the float X bounds rounded to maxdd decimal places.
Parameters
maxdd
number
Number of decimal digits to keep.
Returns
TBox
shiftScaleFloat()
ts
shiftScaleFloat(
shift,
width,
hasShift?,
hasWidth?): TBox;Defined in: core/types/boxes/TBox.ts:516
Returns a new box with the float X dimension shifted and/or scaled.
Parameters
shift
number
Amount to add to every float bound (ignored when hasShift is false).
width
number
New float width (ignored when hasWidth is false).
hasShift?
boolean = true
Set to false to skip shifting (default true).
hasWidth?
boolean = true
Set to false to skip scaling (default true).
Returns
TBox
shiftScaleInt()
ts
shiftScaleInt(
shift,
width,
hasShift?,
hasWidth?): TBox;Defined in: core/types/boxes/TBox.ts:505
Returns a new box with the integer X dimension shifted and/or scaled. Requires an integer-typed TBox (built from an IntSpan); throws for float boxes.
Parameters
shift
number
Amount to add to every integer bound (ignored when hasShift is false).
width
number
New integer width (ignored when hasWidth is false).
hasShift?
boolean = true
Set to false to skip shifting (default true).
hasWidth?
boolean = true
Set to false to skip scaling (default true).
Returns
TBox
shiftScaleTime()
ts
shiftScaleTime(shift, duration): TBox;Defined in: core/types/boxes/TBox.ts:533
Returns a new box with the T dimension shifted and/or scaled.
Parameters
shift
number
Raw WASM pointer to a MEOS interval for the shift amount (0 to skip).
duration
number
Raw WASM pointer to a MEOS interval for the new duration (0 to skip).
Returns
TBox
tmax()
ts
tmax(): number;Defined in: core/types/boxes/TBox.ts:327
Returns the upper temporal bound as microseconds since 2000-01-01 UTC.
Returns
number
tmaxInc()
ts
tmaxInc(): boolean;Defined in: core/types/boxes/TBox.ts:337
true if the upper temporal bound is inclusive (]).
Returns
boolean
tmin()
ts
tmin(): number;Defined in: core/types/boxes/TBox.ts:322
Returns the lower temporal bound as microseconds since 2000-01-01 UTC.
Returns
number
tminInc()
ts
tminInc(): boolean;Defined in: core/types/boxes/TBox.ts:332
true if the lower temporal bound is inclusive ([).
Returns
boolean
toFloatSpan()
ts
toFloatSpan(): number;Defined in: core/types/boxes/TBox.ts:456
Extracts the X dimension as a FloatSpan and returns the raw WASM pointer. Use new FloatSpan(ptr) to obtain a typed object.
Returns
number
toIntSpan()
ts
toIntSpan(): number;Defined in: core/types/boxes/TBox.ts:448
Extracts the X dimension as an IntSpan and returns the raw WASM pointer. Use new IntSpan(ptr) to obtain a typed object.
Returns
number
toString()
ts
toString(maxdd?): string;Defined in: core/types/boxes/TBox.ts:262
Returns the WKT string representation.
Parameters
maxdd?
number = 15
Maximum decimal digits for float values (default 15).
Returns
string
toTsTzSpan()
ts
toTsTzSpan(): number;Defined in: core/types/boxes/TBox.ts:464
Extracts the T dimension as a TsTzSpan and returns the raw WASM pointer. Use new TsTzSpan(ptr) to obtain a typed object.
Returns
number
union()
ts
union(other, strict?): TBox;Defined in: core/types/boxes/TBox.ts:436
Returns the union of this and other. The caller is responsible for calling free on the result.
Parameters
other
TBox
strict?
boolean = false
If true, throws when the boxes do not overlap or touch (default false).
Returns
TBox
xmax()
ts
xmax(): number;Defined in: core/types/boxes/TBox.ts:307
Returns the upper numeric bound. For integer X dimensions, returns the inclusive upper value (half-open span upper minus 1).
Returns
number
xmaxInc()
ts
xmaxInc(): boolean;Defined in: core/types/boxes/TBox.ts:317
true if the upper numeric bound is inclusive (]).
Returns
boolean
xmin()
ts
xmin(): number;Defined in: core/types/boxes/TBox.ts:299
Returns the lower numeric bound. For integer X dimensions, returns the inclusive lower value.
Returns
number
xminInc()
ts
xminInc(): boolean;Defined in: core/types/boxes/TBox.ts:312
true if the lower numeric bound is inclusive ([).
Returns
boolean
fromFloat()
ts
static fromFloat(d): TBox;Defined in: core/types/boxes/TBox.ts:153
Creates a T-only TBox from a single float value (X dimension is a degenerate point span).
Parameters
d
number
Float value.
Returns
TBox
fromFloatTimestamp()
ts
static fromFloatTimestamp(d, t): TBox;Defined in: core/types/boxes/TBox.ts:187
Creates an XT TBox from a single float and a single timestamp.
Parameters
d
number
Float value for the X dimension.
t
number
Timestamp as microseconds since 2000-01-01 UTC for the T dimension.
Returns
TBox
fromFloatTsTzSpan()
ts
static fromFloatTsTzSpan(d, tstzSpanPtr): TBox;Defined in: core/types/boxes/TBox.ts:205
Creates an XT TBox from a single float and a timestamp span.
Parameters
d
number
Float value for the X dimension.
tstzSpanPtr
number
Raw WASM pointer to a TsTzSpan for the T dimension.
Returns
TBox
fromHexWKB()
ts
static fromHexWKB(hexwkb): TBox;Defined in: core/types/boxes/TBox.ts:137
Deserialises a TBox from a hex-encoded WKB string produced by asHexWKB.
Parameters
hexwkb
string
Hex-encoded WKB string.
Returns
TBox
fromInt()
ts
static fromInt(i): TBox;Defined in: core/types/boxes/TBox.ts:145
Creates a T-only TBox from a single integer value (X dimension is a degenerate point span).
Parameters
i
number
Integer value.
Returns
TBox
fromIntTimestamp()
ts
static fromIntTimestamp(i, t): TBox;Defined in: core/types/boxes/TBox.ts:178
Creates an XT TBox from a single integer and a single timestamp.
Parameters
i
number
Integer value for the X dimension.
t
number
Timestamp as microseconds since 2000-01-01 UTC for the T dimension.
Returns
TBox
fromIntTsTzSpan()
ts
static fromIntTsTzSpan(i, tstzSpanPtr): TBox;Defined in: core/types/boxes/TBox.ts:196
Creates an XT TBox from a single integer and a timestamp span.
Parameters
i
number
Integer value for the X dimension.
tstzSpanPtr
number
Raw WASM pointer to a TsTzSpan for the T dimension.
Returns
TBox
fromNumSpanTimestamp()
ts
static fromNumSpanTimestamp(numSpanPtr, t): TBox;Defined in: core/types/boxes/TBox.ts:223
Creates an XT TBox from a numeric span and a single timestamp.
Parameters
numSpanPtr
number
Raw WASM pointer to an IntSpan or FloatSpan for the X dimension.
t
number
Timestamp as microseconds since 2000-01-01 UTC for the T dimension.
Returns
TBox
fromNumSpanTsTzSpan()
ts
static fromNumSpanTsTzSpan(numSpanPtr, tstzSpanPtr): TBox;Defined in: core/types/boxes/TBox.ts:214
Creates an XT TBox from a numeric span and a timestamp span.
Parameters
numSpanPtr
number
Raw WASM pointer to an IntSpan or FloatSpan for the X dimension.
tstzSpanPtr
number
Raw WASM pointer to a TsTzSpan for the T dimension.
Returns
TBox
fromSet()
ts
static fromSet(setPtr): TBox;Defined in: core/types/boxes/TBox.ts:231
Creates a TBox from a MEOS set (IntSet or FloatSet).
Parameters
setPtr
number
Raw WASM pointer to a set.
Returns
TBox
fromSpan()
ts
static fromSpan(spanPtr): TBox;Defined in: core/types/boxes/TBox.ts:161
Creates an X-only TBox from a numeric span (IntSpan or FloatSpan).
Parameters
spanPtr
number
Raw WASM pointer to an IntSpan or FloatSpan.
Returns
TBox
fromSpanSet()
ts
static fromSpanSet(spanSetPtr): TBox;Defined in: core/types/boxes/TBox.ts:239
Creates a TBox from a MEOS span set (IntSpanSet, FloatSpanSet, or TsTzSpanSet).
Parameters
spanSetPtr
number
Raw WASM pointer to a span set.
Returns
TBox
fromString()
ts
static fromString(str): TBox;Defined in: core/types/boxes/TBox.ts:129
Parses a TBox from its WKT string representation.
Parameters
str
string
WKT string, e.g. "TBOXFLOAT XT([1.5, 10.5],[2020-01-01, 2020-12-31])".
Returns
TBox
fromTimestamp()
ts
static fromTimestamp(t): TBox;Defined in: core/types/boxes/TBox.ts:169
Creates a T-only TBox from a single timestamp.
Parameters
t
number
Timestamp as microseconds since 2000-01-01 UTC.
Returns
TBox
make()
ts
static make(xSpanPtr, tSpanPtr): TBox;Defined in: core/types/boxes/TBox.ts:250
Builds a TBox from a numeric span and/or a temporal span. Pass 0 for either argument to omit that dimension.
Parameters
xSpanPtr
number
Raw WASM pointer to an IntSpan or FloatSpan (0 = no X dimension).
tSpanPtr
number
Raw WASM pointer to a TsTzSpan (0 = no T dimension).
Returns
TBox