Skip to content

healpix-geo dggrs provider - #93

Merged
tik65536 merged 14 commits into
mainfrom
healpix_geo_dggrs_provider
Sep 24, 2026
Merged

tik65536 merged 14 commits into
mainfrom
healpix_geo_dggrs_provider

Conversation

@tik65536

Copy link
Copy Markdown
Member
  • Added healpix dggrs (healpixgeo_dggrs_provider.py) with nested and zuniq indexing using healpix-geo

    • Implementation based on healpix-geo v0.4.1
    • HealpixGeoNestedProvider
      • The implementation is based on the discussion from OGC API-DGGS
      • The textual ZIRS of the nested index is in the form of "{refinement_level}_{nested_cell_id}", the refinement level is a 2-digit string with a 0 prefix.
      • The implementation is tested with ZarrCollectionProvider, as the datatree stores different refinement levels as different datasets.
    • HealpixGeoZuniqProvider
      • zuniq doesn't come with the textual ZIRS representation at the moment of implementation, so I treat the string version of cell ID as the textual ZIRS.
      • Support conversion to nested indexed collections, which means collections with nested index can be queried using the zuniq index.
  • Changed to use shapely.geometry.shape instead of shapely.from_geojson to create shapely polygons.

  • TilesAPI support conversion between dggrsid with query parameter?dggrsid=<dggrsid>

  • Notes on implementations:

    • I didn't use the healpix-geo auto module due to it requiring a grid object that is a frozen data class with refinement level specified for nested index. That means that when the refinement level changes, I have to create another object. It is not suitable for API purposes, where the refinement level often changes in the query, and for multi-refinement-level collections.

tik65536 and others added 14 commits June 13, 2026 14:18
Merge changes from main to healpix_geo_dggrs_provider
- select data using `.sel` with method `pad`, to reduce the dataset first.(Fuzzy match)
- Then use query to perform actual selection.
2. HealpixGeoZuniqProvider (support conversion to nested index)
2. tiles api: support conversion to other dggrsId is convert if supported.
3. changed to use shapely.geometry.shape instead of from_geojson
4.
- added testing data for healpixgeo
- bugfix healpixgeo dggrs provider
- when there are two collections from the same datasource with different indexing schema,
  the number of returns is larger than the validation dataset.
@tik65536
tik65536 merged commit 245c6a7 into main Sep 24, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant