worace / geoq

Geospatial Utility Belt
MIT License
71 stars 8 forks source link

Provide gh option to match "filter contains" #28

Open b-jazz opened 5 years ago

b-jazz commented 5 years ago

If I'm not mistaken, these two commands produce the same output.

$ geoq gh roots | geoq gh children | geoq filter intersects -q ./united_states.geojson | sort | uniq | wc -l
43
$ geoq gh covering 2 < ./united_states.geojson | sort | uniq | wc -l
43

But there is no corresponding option to the gh subcommand to find the geohashes that are fully contained within the entity:

$ geoq gh roots| geoq gh children | geoq filter contains -q ./united_states.geojson | sort | uniq | wc -l
6
$ geoq gh ??? 

And it would be useful if such a command could output more and more detailed geohashes (up to a given number of digits) that would fall within said entity. For example, output the 6 2-digit geohashes from the command above, and then break the missing 37 geohashes from the first two commands into their 32 3-digit geohashes and see which of those still match geoq filter contains.

b-jazz commented 5 years ago

Also, is there a reason that the gh covering and filter intersects subcommands have different names? Maybe I'm missing an obvious reason. Should these be named the same?