quadbin
CORE
QUADBIN_BBOX(quadbin)
Description
Returns an array with the boundary box of a given Quadbin. This boundary box contains the minimum and maximum longitude and latitude. The output format is [West-South, East-North] or [min long, min lat, max long, max lat].
quadbin
:BIGINT
Quadbin to get the boundary box from.
Return type
SUPER
Example
1
SELECT carto.QUADBIN_BBOX(5207251884775047167);
2
-- -22.5
3
-- 21.943045533438188
4
-- 0.0
5
-- 40.97989806962013
QUADBIN_BOUNDARY(quadbin)
Description
Returns the boundary for a given Quadbin as a polygon GEOMETRY with the same coordinates as given by the QUADBIN_BBOX function.
quadbin
:BIGINT
Quadbin to get the boundary geography from.
Return type
GEOMETRY
Example
1
SELECT carto.QUADBIN_BOUNDARY(5207251884775047167);
2
-- POLYGON ((-22.5 21.9430455334, -22.5 40.9798980696, 0 40.9798980696, 0 21.9430455334, -22.5 21.9430455334))
QUADBIN_CENTER(quadbin)
Description
Returns the center for a given Quadbin. The center is the intersection point of the four immediate children Quadbin.
quadbin
:BIGINT
Quadbin to get the center from.
Return type
GEOMETRY
Example
1
SELECT carto.QUADBIN_CENTER(5207251884775047167);
2
-- POINT (-11.25 31.952162238)
QUADBIN_FROMGEOGPOINT(point, resolution)
Description
Returns the Quadbin of a given point at a given level of detail.
point
:GEOMETRY
point to get the Quadbin from.resolution
:INT
level of detail or zoom.
Return type
BIGINT
Example
1
SELECT carto.QUADBIN_FROMGEOGPOINT(ST_POINT(-3.7038, 40.4168), 4);
2
-- 5207251884775047167
QUADBIN_FROMLONGLAT(longitude, latitude, resolution)
Description
Returns the Quadbin representation of a point for a given level of detail and geographic coordinates.
longitude
:FLOAT8
longitude (WGS84) of the point.latitude
:FLOAT8
latitude (WGS84) of the point.resolution
:INT
level of detail or zoom.
Return type
BIGINT
Example
1
SELECT carto.QUADBIN_FROMLONGLAT(-3.7038, 40.4168, 4);
2
-- 5207251884775047167
QUADBIN_FROMQUADKEY(quadkey)
Description
Compute a quadbin index from a quadkey.
quadkey
:VARCHAR(MAX)
Quadkey representation of the index.
Return type
BIGINT
Example
1
SELECT carto.QUADBIN_FROMQUADKEY('0331110121');
2
-- 5234261499580514303
QUADBIN_FROMZXY(z, x, y)
Description
z
:BIGINT
zoom level.x
:BIGINT
horizontal position of a tile.y
:BIGINT
vertical position of a tile.
Constraints
Tile coordinates
x
and y
depend on the zoom level z
. For both coordinates, the minimum value is 0, and the maximum value is two to the power of z
, minus one (2^z - 1
).Return type
BIGINT
Example
1
SELECT carto.QUADBIN_FROMZXY(4, 7, 6);
2
-- 5207251884775047167
QUADBIN_ISVALID(quadbin)
Description
Returns
true
when the given index is a valid Quadbin, false
otherwise.quadbin
:BIGINT
Quadbin index.
Return type
BOOLEAN
Examples
1
SELECT carto.QUADBIN_ISVALID(5207251884775047167);
2
-- true
1
SELECT carto.QUADBIN_ISVALID(1234);
2
-- false
QUADBIN_KRING(origin, size)
Description
Returns all cell indexes in a filled square k-ring centered at the origin in no particular order.
origin
:BIGINT
Quadbin index of the origin.size
:INT
size of the ring (distance from the origin).
Return type
SUPER
Example
1
SELECT carto.QUADBIN_KRING(5207251884775047167, 1);
2
-- 5207128739472736255
3
-- 5207146331658780671
4
-- 5207902795658690559
5
-- 5207234292589002751
6
-- 5207251884775047167
7
-- 5208008348774957055
8
-- 5207269476961091583
9
-- 5207287069147135999
10
-- 5208043533147045887
QUADBIN_KRING_DISTANCES(origin, size)
Description
Returns all cell indexes and their distances in a filled square k-ring centered at the origin in no particular order.
origin
:BIGINT
Quadbin index of the origin.size
:INT
size of the ring (distance from the origin).
Return type
SUPER
Example
1
SELECT carto.QUADBIN_KRING_DISTANCES(5207251884775047167, 1);
2
-- {"index":5207128739472736255,"distance":1}
3
-- {"index":5207146331658780671,"distance":1}
4
-- {"index":5207902795658690559,"distance":1}
5
-- {"index":5207234292589002751,"distance":1}
6
-- {"index":5207251884775047167,"distance":0}
7
-- {"index":5208008348774957055,"distance":1}
8
-- {"index":5207269476961091583,"distance":1}
9
-- {"index":5207287069147135999,"distance":1}
10
-- {"index":5208043533147045887,"distance":1}
tip
QUADBIN_POLYFILL(geography, resolution)
Description
Returns an array of Quadbins that intersect with the given geography at a given level of detail.
geography
:GEOMETRY
geography to extract the Quadbins from.resolution
:INT
level of detail or zoom.
Return type
SUPER
Example
1
SELECT carto.QUADBIN_POLYFILL(ST_GEOMFROMTEXT('POLYGON ((-3.71219873428345 40.413365349070865, -3.7144088745117 40.40965661286395, -3.70659828186035 40.409525904775634, -3.71219873428345 40.413365349070865))'), 17);
2
-- 5265786693164204031
3
-- 5265786693163941887
4
-- 5265786693153193983
5
-- 5265786693164466175
6
-- 5265786693164728319
7
-- 5265786693165514751
QUADBIN_RESOLUTION(quadbin)
Description
Returns the resolution of the input Quadbin.
quadbin
:BIGINT
Quadbin from which to get the resolution.
Return type
BIGINT
Example
1
SELECT carto.QUADBIN_RESOLUTION(5207251884775047167);
2
-- 4
QUADBIN_SIBLING(quadbin, direction)
Description
Returns the Quadbin directly next to the given Quadbin at the same resolution. The direction must be set in the corresponding argument and currently only horizontal/vertical neigbours are supported. It will return
NULL
if the sibling does not exist.quadbin
:BIGINT
Quadbin to get the sibling from.direction
:VARCHAR
'right'|'left'|'up'|'down'
direction to move in to extract the next sibling.
Return type
BIGINT
Example
1
SELECT carto.QUADBIN_SIBLING(5207251884775047167, 'up');
2
-- 5207146331658780671
QUADBIN_TOCHILDREN(quadbin, resolution)
Description
Returns an array with the children Quadbins of a given Quadbin for a specific resolution. A children Quadbin is a Quadbin of higher level of detail that is contained by the current Quadbin. Each Quadbin has four direct children (at the next higher resolution).
quadbin
:BIGINT
Quadbin to get the children from.resolution
:INT
resolution of the desired children.
Return type
SUPER
Example
1
SELECT carto.QUADBIN_TOCHILDREN(5207251884775047167, 5);
2
-- 5211742290262884351
3
-- 5211751086355906559
4
-- 5211746688309395455
5
-- 5211755484402417663
QUADBIN_TOPARENT(quadbin, resolution)
Description
Returns the parent (ancestor) Quadbin of a given Quadbin for a specific resolution. An ancestor of a given Quadbin is a Quadbin of smaller resolution that spatially contains it.
quadbin
:BIGINT
Quadbin to get the parent from.resolution
:INT
resolution of the desired parent.
Return type
BIGINT
Example
1
SELECT carto.QUADBIN_TOPARENT(5207251884775047167, 3);
2
-- 5202783469519765503
QUADBIN_TOQUADKEY(quadbin)
Description
Compute a quadkey from a quadbin index.
quadbin
:BIGINT
Quadbin index.
Return type
VARCHAR(MAX)
Example
1
SELECT carto.QUADBIN_TOQUADKEY(5234261499580514303);
2
-- '0331110121'
QUADBIN_TOZXY(quadbin)
Description
Returns the zoom level
z
and coordinates x
, y
for a given Quadbin.quadbin
:BIGINT
Quadbin from which to obtain the coordinates.
Return type
SUPER
Example
1
SELECT carto.QUADBIN_TOZXY(5207251884775047167);
2
-- z x y
3
-- 4 7 6
Last modified 4mo ago