Hopefully the following will clarify this issue further.

************** GRASS 7 ************************

GRASS commands work in GRASS 7 including all display commands that actually display something.

Scripting works in GRASS 7. It works considerably better than it did in prior versions.

Remote access works in GRASS 7.

Command line changes to GRASS 7 are the following:

1) Commands that optionally used or **required** textual prompt and response are replaced by commands where you type the argument and value when entering the command. This is a considerable improvement for scripts, which can hang while waiting for user input that can never happen.

2) Display commands that **required** user interaction via mouse and prompt/response and **required** the existence of old display/GUI technology emulated in XWindows environments no longer are supported. These GUI environments (these are primitive GUI's, not command line interfaces) relied on very old (pre XWindows) display and interface technology, and in some cases badly hacked code. These only worked on a subset of the platforms that GRASS runs on.

3) Display commands are no longer supported that **assume** or **require** when rendering the **guaranteed** existence of a specific, very old display technology that is currently emulated under XWindows and not available on some of the platforms that GRASS runs on. Display commands can render to a variety of widely used, current formats that anyone who so chooses can make use of.

In other words, the main change has been to make the command line interface a purely **command line interface** instead of a mixed CLI and primitive GUI. That is, you type a command and something happens-- a file is modified, a map is rendered, etc. Commands no longer start persistent processes. You no longer type a command to start an interactive, command-specific, GUI session that varies in the kind of interface and kind of underlying code from command to command. An important benefit of this is that it makes scripting much easier and allows scripts to access a wider variety of GRASS functions more easily than was possible in GRASS 5.

Integrated display services, including user interaction with the display using a mouse, are provided in GRASS 7 using the wxPython interface development platform. This uses current technology that is available on ALL platforms on which GRASS is run. wxPython is powerful, versatile, and comparatively easy to work with as GUI platforms go. It also strengthen ties between GRASS code and the Python language for scripting and custom development.

GRASS display services can also be provided with QGIS, which uses the QT interface development platform.

The emulated display technology that was used by GRASS 4-6 still exists in XWindows AFAIK. Since all GRASS display commands now render cleanly to common graphic formats, there is no reason that someone could not use this retro code to display what GRASS display commands render. This approach is different than requiring the existence of this technology to even run the GRASS command.

****************** opinion *************************

Anyone who so desires can write and maintain another set of display services, and even interactive mouse display, using another interface development platform if they so desire. If this takes significant coding and maintenance effort (and IMHO, this does when it involves GUI development), I personally think it is a waste of scarce developer resources. But this is a volunteer project and relies on people working on what inspires them. YAG (yet another GUI) that is different from the one that two of us code and maintain (a third person maintains the TclTk GUI for GRASS 6) might be appreciated by a subset of the GRASS community. But if it is developed with modern GUI tools, it will look like a modern GUI, not an old GRASS 4/5 GUI. I'm not sure if that is or is not a problem.

Michael

On Dec 9, 2009, at 8:02 AM, grass-user-requ...@lists.osgeo.org wrote:

Date: Wed, 09 Dec 2009 07:01:47 -0500
From: Doc Robinson <doc.robin...@utoronto.ca>
Subject: [GRASS-user] Grass70 wxgui vs. command line d.*
To: grass-user@lists.osgeo.org
Message-ID: <4b1f91ab.6030...@utoronto.ca>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

I agree with most all of what John Stevenson says..especially

Advantages of command line:
- it is VERY quick once learned
- easy to write scripts
- can work remotely from slow computer over ssh -X connection
- interaction with operating system commands and other software e.g.
imagemagick, GMT
- full history of what has been done
- easy to repeat previous commands

It is distressing to think that I might have to stick with GRASS 6.x if they dont take into consideration all of us using ssh connections...this
is really a huge advantage GRASS has over other packages


--
Regards,
         Doc


_______________________________________________
grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user

Reply via email to