HydrologicEngineeringCenter / HydrologicEngineeringCenter/Vortex

Projection issues for rc.4 and rc.5 releases

Open
#70 9 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
37
Forks
7
PR merge metrics
No merged PRs in 30d

Description

So I'm getting a weird issue with v rc.4 where it's writing the horizontal units for Albers SHG as 'metre', as opposed to 'Meters', as previous versions have done.
image

The problem is, when using this precipitation DSS into HEC-RAS, it hits a runtime error from PROJ complaining about an invalid linear unit, as shown at the bottom of this issue. I'm not sure how PROJ has an issue with 'metre', but it causes this issue.

So I upgraded to the new v rc.5 to try again, and now the Importer example Jython script stopped working:
type object 'mil.army.usace.hec.vortex.geo.WktFactory' has no attribute 'shg'

This is the PROJ error when using the rc.4 'metre' DSS:

Writing Event Conditions ...
 
ERROR 1: PROJ: proj_as_wkt: cannot convert value to target linear unit
ERROR 1: PROJ: proj_create: Error -7: unknown unit conversion id
ERROR 6: Cannot find coordinate operations from `PROJCRS["USA_Contiguous_Albers_Equal_Area_Conic_USGS_version",BASEGEOGCRS["NAD83",DATUM["North American Datum 1983",ELLIPSOID["GRS 1980",6378137,298.257222101,LENGTHUNIT["metre",1]],ID["EPSG",6269]],PRIMEM["Greenwich",0,ANGLEUNIT["Degree",0.0174532925199433]]],CONVERSION["unnamed",METHOD["Albers Equal Area",ID["EPSG",9822]],PARAMETER["Latitude of false origin",23,ANGLEUNIT["Degree",0.0174532925199433],ID["EPSG",8821]],PARAMETER["Longitude of false origin",-96,ANGLEUNIT["Degree",0.0174532925199433],ID["EPSG",8822]],PARAMETER["Latitude of 1st standard parallel",29.5,ANGLEUNIT["Degree",0.0174532925199433],ID["EPSG",8823]],PARAMETER["Latitude of 2nd standard parallel",45.5,ANGLEUNIT["Degree",0.0174532925199433],ID["EPSG",8824]],PARAMETER["Easting at false origin",0,LENGTHUNIT["metre",0],ID["EPSG",8826]],PARAMETER["Northing at false origin",0,LENGTHUNIT["metre",0],ID["EPSG",8827]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",0]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",0]]]' to `PROJCRS["NAD83(2011) / Louisiana South (ftUS)",BASEGEOGCRS["NAD83(2011)",DATUM["NAD83 (National Spatial Reference System 2011)",ELLIPSOID["GRS 1980",6378137,298.257222101,LENGTHUNIT["metre",1]],ID["EPSG",1116]],PRIMEM["Greenwich",0,ANGLEUNIT["Degree",0.0174532925199433]]],CONVERSION["unnamed",METHOD["Lambert Conic Conformal (2SP)",ID["EPSG",9802]],PARAMETER["Latitude of false origin",28.5,ANGLEUNIT["Degree",0.0174532925199433],ID["EPSG",8821]],PARAMETER["Longitude of false origin",-91.3333333333333,ANGLEUNIT["Degree",0.0174532925199433],ID["EPSG",8822]],PARAMETER["Latitude of 1st standard parallel",30.7,ANGLEUNIT["Degree",0.0174532925199433],ID["EPSG",8823]],PARAMETER["Latitude of 2nd standard parallel",29.3,ANGLEUNIT["Degree",0.0174532925199433],ID["EPSG",8824]],PARAMETER["Easting at false origin",3280833.3333,LENGTHUNIT["US survey foot",0.304800609601219],ID["EPSG",8826]],PARAMETER["Northing at false origin",0,LENGTHUNIT["US survey foot",0.304800609601219],ID["EPSG",8827]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["US survey foot",0.304800609601219]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["US survey foot",0.304800609601219]]]'
Processing Precipitation data...
   (assumes geometry data is geo-referenced)
ERROR 1: PROJ: proj_as_wkt: cannot convert value to target linear unit
ERROR 1: PROJ: proj_create: Error -7: unknown unit conversion id
ERROR 6: Cannot find coordinate operations from `PROJCRS["USA_Contiguous_Albers_Equal_Area_Conic_USGS_version",BASEGEOGCRS["NAD83",DATUM["North American Datum 1983",ELLIPSOID["GRS 1980",6378137,298.257222101,LENGTHUNIT["metre",1]],ID["EPSG",6269]],PRIMEM["Greenwich",0,ANGLEUNIT["Degree",0.0174532925199433]]],CONVERSION["unnamed",METHOD["Albers Equal Area",ID["EPSG",9822]],PARAMETER["Latitude of false origin",23,ANGLEUNIT["Degree",0.0174532925199433],ID["EPSG",8821]],PARAMETER["Longitude of false origin",-96,ANGLEUNIT["Degree",0.0174532925199433],ID["EPSG",8822]],PARAMETER["Latitude of 1st standard parallel",29.5,ANGLEUNIT["Degree",0.01745329
```25199433],ID["EPSG",8823]],PARAMETER["Latitude of 2nd standard parallel",45.5,ANGLEUNIT["Degree",0.0174532925199433],ID["EPSG",8824]],PARAMETER["Easting at false origin",0,LENGTHUNIT["metre",0],ID["EPSG",8826]],PARAMETER["Northing at false origin",0,LENGTHUNIT["metre",0],ID["EPSG",8827]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",0]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",0]]]' to `PROJCRS["NAD83(2011) / Louisiana South (ftUS)",BASEGEOGCRS["NAD83(2011)",DATUM["NAD83 (National Spatial Reference System 2011)",ELLIPSOID["GRS 1980",6378137,298.257222101,LENGTHUNIT["metre",1]],ID["EPSG",1116]],PRIMEM["Greenwich",0,ANGLEUNIT["Degree",0.0174532925199433]]],CONVERSION["unnamed",METHOD["Lambert Conic Conformal (2SP)",ID["EPSG",9802]],PARAMETER["Latitude of false origin",28.5,ANGLEUNIT["Degree",0.0174532925199433],ID["EPSG",8821]],PARAMETER["Longitude of false origin",-91.3333333333333,ANGLEUNIT["Degree",0.0174532925199433],ID["EPSG",8822]],PARAMETER["Latitude of 1st standard parallel",30.7,ANGLEUNIT["Degree",0.0174532925199433],ID["EPSG",8823]],PARAMETER["Latitude of 2nd standard parallel",29.3,ANGLEUNIT["Degree",0.0174532925199433],ID["EPSG",8824]],PARAMETER["Easting at false origin",3280833.3333,LENGTHUNIT["US survey foot",0.304800609601219],ID["EPSG",8826]],PARAMETER["Northing at false origin",0,LENGTHUNIT["US survey foot",0.304800609601219],ID["EPSG",8827]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["US survey foot",0.304800609601219]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["US survey foot",0.304800609601219]]]'
Error processing data: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
Error processing Precipitation data, exiting...
Error processing event conditions

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the linked Importer example Jython script and its WktFactory.shg call, then reproduce the rc.4 PROJ unit-conversion failure and the rc.5 missing-attribute failure. Done means the importer works with the release projection data and PROJ accepts the generated coordinate systems without the reported errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, python
Domain
backend, data
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.