Skip to content

Traversal functions in the A5 Geospatial Index DuckDB extension

Function category

Traversal

3 functions

Find cells in a neighborhood: edge- or vertex-adjacent grid disks for fixed-step traversal, or all cells within a metric radius. Use these for proximity queries and spatial joins.

a5_grid_disk

Scalar function Traversal
Signature
a5_grid_disk(cell: UBIGINT, k: INTEGER) UBIGINT[]
Arguments (Positional)
Argument cell Type UBIGINT Mode Positional Description
Argument k Type INTEGER Mode Positional Description
Description
1 Example 1
SELECT a5_grid_disk(a5_lonlat_to_cell(-122.4, 37.8, 10), 1);

Output

a5_grid_disk(a5_lonlat_to_cell(-122.4, 37.8, 10), 1)
[1936189948734472192, 1936191048246099968, 1937277365734342656, 1937278465245970432, 1937279564757598208, 1937281763780853760]

a5_grid_disk_vertex

Scalar function Traversal
Signature
a5_grid_disk_vertex(cell: UBIGINT, k: INTEGER) UBIGINT[]
Arguments (Positional)
Argument cell Type UBIGINT Mode Positional Description
Argument k Type INTEGER Mode Positional Description
Description
1 Example 1
SELECT a5_grid_disk_vertex(a5_lonlat_to_cell(-122.4, 37.8, 10), 1);

Output

a5_grid_disk_vertex(a5_lonlat_to_cell(-122.4, 37.8, 10), 1)
[1936188849222844416, 1936189948734472192, 1936191048246099968, 1936192147757727744, 1937277365734342656, 1937278465245970432, 1937279564757598208, 1937281763780853760]

a5_spherical_cap

Scalar function Traversal
Signature
a5_spherical_cap(cell: UBIGINT, radius: DOUBLE) UBIGINT[]
Arguments (Positional)
Argument cell Type UBIGINT Mode Positional Description
Argument radius Type DOUBLE Mode Positional Description
Description
1 Example 1
SELECT a5_spherical_cap(a5_lonlat_to_cell(-122.4, 37.8, 10), 1000.0);

Output

a5_spherical_cap(a5_lonlat_to_cell(-122.4, 37.8, 10), 1000.0)
[1937278465245970432]