Skip to content

Implement iterator for edges in "Gosper Island" #1114

@ajfriend

Description

@ajfriend

Implement an iterator (or something like it) to directly provide the H3 directed edges making up the outline of the child set of a given cell.

This would provide an additional speedup for the new cellsToMultiPolygon algorithm:

  1. If a user provides a pre-compacted set, we can run something like uncomopactCellsToMultiPolygon to get the outline of the cell set of all the sells uncompacted to a certain resolution. This would be faster because we can skip processing all the internal edges of the compacted cells.
  2. Alternatively, if a user provides an uncompacted/flat set of cells, we could compact it as an initial preprocessing step of cellsToMultiPolygon. My guess is that in many cases, this will be faster than processing the flat set directly.
Image

Side note: It'd be nice to have a good name for this shape. I've found "Gosper Island" (https://en.wikipedia.org/wiki/Gosper_curve), or "flowsnake (a spoonerism of snowflake)", but that might apply more to the space-filling curve than the outline.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions