quadbin
You can learn more about Quadbins in the Spatial Indexes section of the documentation.
QUADBIN_FROMLONGLAT
QUADBIN_FROMLONGLAT(longitude, latitude, resolution)Description
Returns the Quadbin representation of a point for a requested resolution and geographic coordinates.
Input parameters
longitude:DOUBLElongitude (WGS84) of the point.latitude:DOUBLElatitude (WGS84) of the point.resolution:INTlevel of detail or zoom.
Return type
BIGINT
Example
SELECT carto.QUADBIN_FROMLONGLAT(-3.7038, 40.4168, 4);
-- 5207251884775047167QUADBIN_FROMGEOGPOINT
QUADBIN_FROMGEOGPOINT(point, resolution)Description
Returns the Quadbin of a given point at a requested resolution.
Input parameters
point:GEOMETRY(4326)geographic point.resolution:INTlevel of detail or zoom.
Return type
BIGINT
Example
QUADBIN_FROMZXY
Description
Returns a Quadbin from z, x, y tile coordinates.
Input parameters
z:INTzoom level.x:INThorizontal position of a tile.y:INTvertical 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
QUADBIN_FROMQUADKEY
Description
Compute a quadbin index from a quadkey.
Input parameters
quadkey:STRINGQuadkey representation of the index.
Return type
BIGINT
Example
QUADBIN_TOPARENT
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.
Input parameters
quadbin:BIGINTQuadbin to get the parent from.resolution:INTresolution of the desired parent.
Return type
BIGINT
Example
QUADBIN_TOCHILDREN
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).
Input parameters
quadbin:BIGINTQuadbin to get the children from.resolution:INTresolution of the desired children.
Return type
ARRAY<BIGINT>
Example
QUADBIN_TOQUADKEY
Description
Compute a quadkey from a quadbin index.
Input parameters
quadbin:BIGINTQuadbin index.
Return type
STRING
Example
QUADBIN_TOZXY
Description
Returns the zoom level z and coordinates x, y for a given Quadbin.
Input parameters
quadbin:BIGINTQuadbin from which to obtain the coordinates.
Return type
STRUCT<z: INT, x: INT, y: INT>
Example
QUADBIN_RESOLUTION
Description
Returns the resolution of the input Quadbin.
Input parameters
quadbin:BIGINTQuadbin from which to get the resolution.
Return type
INT
Example
QUADBIN_ISVALID
Description
Returns true when the given index is a valid Quadbin, false otherwise.
Input parameters
quadbin:BIGINTQuadbin index.
Return type
BOOLEAN
Examples
QUADBIN_KRING
Description
Returns all cell indexes in a filled square k-ring centered at the origin in no particular order.
Input parameters
origin:BIGINTQuadbin index of the origin.size:INTsize of the ring (distance from the origin).
Return type
ARRAY<BIGINT>
Example
QUADBIN_KRING_DISTANCES
Description
Returns all cell indexes and their distances in a filled square k-ring centered at the origin in no particular order.
Input parameters
origin:BIGINTQuadbin index of the origin.size:INTsize of the ring (distance from the origin).
Return type
ARRAY<STRUCT<index: BIGINT, distance: INT>>
Example
QUADBIN_BBOX
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].
Input parameters
quadbin:BIGINTQuadbin to get the bbox from.
Return type
ARRAY<DOUBLE>
Example
QUADBIN_CENTER
Description
Returns the center of a given Quadbin as a GEOMETRY(4326) POINT. The center is the intersection point of the four immediate children Quadbin.
Input parameters
quadbin:BIGINTQuadbin to get the center from.
Return type
GEOMETRY(4326)
Example
QUADBIN_BOUNDARY
Description
Returns the boundary for a given Quadbin as a GEOMETRY(4326) POLYGON with the same coordinates as given by the QUADBIN_BBOX function.
Input parameters
quadbin:BIGINTQuadbin to get the boundary from.
Return type
GEOMETRY(4326)
Example
QUADBIN_DISTANCE
Description
Returns the Chebyshev distance between two quadbin indexes. The origin and destination indices must have the same resolution. Otherwise NULL will be returned.
Input parameters
origin:BIGINTorigin quadbin index.destination:BIGINTdestination quadbin index.
Return type
BIGINT
Example
QUADBIN_SIBLING
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 neighbours are supported. It will return NULL if the sibling does not exist.
Input parameters
quadbin:BIGINTQuadbin to get the sibling from.direction:STRING'right'|'left'|'up'|'down'direction to move in to extract the next sibling.
Return type
BIGINT
Example
QUADBIN_POLYFILL
Description
Returns an array of Quadbins that intersect with the given geometry at a requested resolution.
Input parameters
geom:GEOMETRY(4326)geometry to extract the Quadbins from.resolution:INTlevel of detail or zoom.
Return type
ARRAY<BIGINT>
Example
Last updated
Was this helpful?
