georust / meta

The GeoRust Team repository for coordinating and discussing GeoRust projects
1 stars 0 forks source link

Create a 'crs' crate? #29

Open frewsxcv opened 2 years ago

frewsxcv commented 2 years ago

It would be a crate for looking up CRS information. Something like Crs::from_str("EPSG:4326").proj_string().

We would need to populate the crate with CRS information, potentially from:

urschrei commented 2 years ago

Is there a specific reason you need the proj string, when libproj (as of v5? I think) can create transforms using EPSG codes (see e.g. https://github.com/georust/proj#convert-from-nad-83-us-survey-feet-to-nad-83-meters-using-epsg-codes) or is this intended to be a totally separate concern from proj functionality?

urschrei commented 2 years ago

That aside, it could be built using a build script and a phf hashmap populated from either a JSON or SQLite source. We'd also have to ensure that the source matched the current libproj version in use by the proj crate, as I believe there is a little bit of EPSG code churn between versions.