[GRASS-dev] [GRASS GIS] #1849: Cannot create a new GRASS Location using a custom proj4 string

GRASS GIS trac at osgeo.org
Sun Apr 14 22:16:11 PDT 2013


#1849: Cannot create a new GRASS Location using a custom proj4 string
-------------------------------------------+--------------------------------
 Reporter:  voncasec                       |       Owner:  grass-dev@…              
     Type:  defect                         |      Status:  new                      
 Priority:  critical                       |   Milestone:  6.4.3                    
Component:  Projections/Datums             |     Version:  unspecified              
 Keywords:  proj4, location wizard, wxgui  |    Platform:  Linux                    
      Cpu:  x86-64                         |  
-------------------------------------------+--------------------------------
Changes (by hamish):

 * cc: pkelly (added)
  * keywords:  proj,proj.4,proj4,location wizard,wxgui => proj4, location
               wizard, wxgui
  * priority:  normal => critical


Comment:

 Hi, testing with the latest relbr64 and devbr6,

 in the wxPy loc'n wizard, defining by proj4 terms, using the string:
 {{{
 +proj=utm +zone=10 +datum=nad83
 }}}

 it asks me to select from transform options 0-6, then when I press Ok to
 that, I get a slightly different error printed in the terminal:
 {{{
 Traceback (most recent call last):
   File "/home/hbowman/dev/grass/svn/relbr_6_4/dist.x86_64-unknown-linux-
 gnu/
   etc/wxpython/location_wizard/wizard.py", line 1517, in OnPageChanging

     if len(dtrans) == 0:
 TypeError: object of type 'int' has no len()
 }}}

 the error that it's checking for is 'Datum transform is required.', -- but
 I don't think it's true, grass is happy enough to let you leave the datum
 transform undefined in the PROJ_INFO file. (then it gives you a message
 about it, "default transform will be used")
 ??


 If I change the +datum= to wgs84 I get the same "`Error: No output format
 specified, define one of flags -p,-g,-j or -w`" error box pops up. (that
 message is from g.proj)

 from the grass6 command line, this shows the 0-6 transform list:
 {{{
 g.proj proj4='+proj=utm +zone=10 +datum=nad83' datumtrans=-1
 }}}

 but this shows the 'please use a flag' error message:
 {{{
 g.proj proj4='+proj=utm +zone=10 +datum=wgs84' datumtrans=-1
 }}}


 Adding the g.proj '-t' flag to "Force override of datum transformation
 information in input co-ordinate system" makes it print the transform opts
 correctly (then exit) for both. I assume the wgs84 continues on as it only
 has the 1 case to choose from, so it gets back to main() and then wonders
 what to do next since no flags were given.

 So a quick fix is to add -t, but why is that needed?

 The problem seems to have come in with r53453; adding '-jf' flags is not
 the correct thing, that just makes it fail differently.


 Hamish

-- 
Ticket URL: <https://trac.osgeo.org/grass/ticket/1849#comment:2>
GRASS GIS <http://grass.osgeo.org>



More information about the grass-dev mailing list