wxPython-based GUI for GRASS GIS Martin Landa January 28, 2008 - - PowerPoint PPT Presentation

wxpython based gui for grass gis
SMART_READER_LITE
LIVE PREVIEW

wxPython-based GUI for GRASS GIS Martin Landa January 28, 2008 - - PowerPoint PPT Presentation

Symposium GIS Ostrava 2008 wxPython-based GUI for GRASS GIS Martin Landa January 28, 2008 GIS Ostrava 2008, January 27-30 1 / 18 Outline GRASS in 2007 GUI for GRASS GIS Motivation wxPython GUI development Plans for 2008 GIS


slide-1
SLIDE 1

GIS Ostrava 2008, January 27-30

Symposium GIS Ostrava 2008

— wxPython-based GUI for GRASS GIS —

Martin Landa

January 28, 2008

1 / 18

slide-2
SLIDE 2

GIS Ostrava 2008, January 27-30

Outline

GRASS in 2007 GUI for GRASS GIS Motivation wxPython GUI development Plans for 2008

2 / 18

slide-3
SLIDE 3

GIS Ostrava 2008, January 27-30

Outline

GRASS in 2007 GUI for GRASS GIS Motivation wxPython GUI development Plans for 2008

3 / 18

slide-4
SLIDE 4

GIS Ostrava 2008, January 27-30

GRASS migrated to OSGeo

◮ What is OSGeo?

◮ “The Open Source Geospatial Foundation has been created to support

and build the highest-quality open source geospatial software.” ◮ Infrastructure (source code repository, websites, mailing lists,

wiki) moved to OSGeo → http://grass.osgeo.org → http://trac.osgeo.org/grass

4 / 18

slide-5
SLIDE 5

GIS Ostrava 2008, January 27-30

GRASS migrated to OSGeo

◮ What is OSGeo?

◮ “The Open Source Geospatial Foundation has been created to support

and build the highest-quality open source geospatial software.” ◮ Infrastructure (source code repository, websites, mailing lists,

wiki) moved to OSGeo

◮ Repository migrated from CVS (hosted since 1999 at

Intevation GmbH, Germany) to OSGeo SVN

◮ Add-ons repository moved from FBK-irst (formerly ITC-irst),

Italy to OSGeo SVN

◮ Website master, mailing lists moved from FBK-irst to OSGeo ◮ Bug tracker (GForge) hosted at Intevation GmbH replaced by

OSGeo Trac instance

→ http://grass.osgeo.org → http://trac.osgeo.org/grass

4 / 18

slide-6
SLIDE 6

GIS Ostrava 2008, January 27-30

Outline

GRASS in 2007 GUI for GRASS GIS Motivation wxPython GUI development Plans for 2008

5 / 18

slide-7
SLIDE 7

GIS Ostrava 2008, January 27-30

GRASS GUI Evolution Story

Motto

While the early decision to first develop GRASS as a command-line system remained good, the need to provide users with a GUI was increasingly difficult to ignore.

◮ All native GUIs written in TCL/TK

6 / 18

slide-8
SLIDE 8

GIS Ostrava 2008, January 27-30

GRASS GUI Evolution Story

Motto

While the early decision to first develop GRASS as a command-line system remained good, the need to provide users with a GUI was increasingly difficult to ignore.

◮ All native GUIs written in TCL/TK

5.0 The first native GUI for GRASS developed by Jacques Bouchard in 1999 and became part of GRASS 5.x, so-called TCLTKGRASS. 6.0 The replacement of TCLTKGRASS – Display Manager developed by Michael Barton, Radim Blaˇ zek and others. 6.2 The next step in GUI evolution was GIS Manager developed mainly by Michael Barton in 2006-2007.

6 / 18

slide-9
SLIDE 9

GIS Ostrava 2008, January 27-30

TCLTKGRASS

The first native GUI for GRASS – TCLTKGRASS in GRASS 5.0.

7 / 18

slide-10
SLIDE 10

GIS Ostrava 2008, January 27-30

Display Manager

Display Manager in GRASS 6.1.

8 / 18

slide-11
SLIDE 11

GIS Ostrava 2008, January 27-30

GIS Manager

GIS Manager in GRASS 6.3.

9 / 18

slide-12
SLIDE 12

GIS Ostrava 2008, January 27-30

Outline

GRASS in 2007 GUI for GRASS GIS Motivation wxPython GUI development Plans for 2008

10 / 18

slide-13
SLIDE 13

GIS Ostrava 2008, January 27-30

Motivation

◮ GRASS shows high capability to analyze and manipulate data

× Incomplete and scarcely intuitive GUI

◮ Limitations of Tcl/Tk toolkit appeared to be fundamental for

the future development

◮ Goals:

11 / 18

slide-14
SLIDE 14

GIS Ostrava 2008, January 27-30

Motivation

◮ GRASS shows high capability to analyze and manipulate data

× Incomplete and scarcely intuitive GUI

◮ Limitations of Tcl/Tk toolkit appeared to be fundamental for

the future development

◮ Goals:

◮ Portability, fully functional on the GNU/Linux, Unix, Mac-OS

and MS Windows operating systems

◮ Ease of Use, providing all the features common to state of

the art GIS applications

◮ Extensibility, all tools integrated into GUI, including

digitization, georectification, image classification, etc.

11 / 18

slide-15
SLIDE 15

GIS Ostrava 2008, January 27-30

wxWidgets

Graphical toolkit

Based on requirements has been decided to use wxWidgets.

◮ Powerful Python binding (know as wxPython) ◮ Uses native platform SDK (native look and feel) ◮ Free OpenGL widget which is requested for future

development (NVIZ replacement)

12 / 18

slide-16
SLIDE 16

GIS Ostrava 2008, January 27-30

wxWidgets

Graphical toolkit

Based on requirements has been decided to use wxWidgets.

◮ Powerful Python binding (know as wxPython) ◮ Uses native platform SDK (native look and feel) ◮ Free OpenGL widget which is requested for future

development (NVIZ replacement)

Python

Python as “easy-to-learn”, object oriented, currently “very popular” language should enable more people actively contribute

  • n the development.

12 / 18

slide-17
SLIDE 17

GIS Ostrava 2008, January 27-30

Outline

GRASS in 2007 GUI for GRASS GIS Motivation wxPython GUI development Plans for 2008

13 / 18

slide-18
SLIDE 18

GIS Ostrava 2008, January 27-30

wxPython GUI development

◮ Development started in the end of 2006 ◮ It is planned to be default GUI option for GRASS 6.4 (the

main release of 2008) and GRASS 7 releases

◮ The GUI composed by two components:

14 / 18

slide-19
SLIDE 19

GIS Ostrava 2008, January 27-30

wxPython GUI development

◮ Development started in the end of 2006 ◮ It is planned to be default GUI option for GRASS 6.4 (the

main release of 2008) and GRASS 7 releases

◮ The GUI composed by two components:

◮ Layer Manager allows to run different GRASS modules from

menu, includes map layer management, integrated command-line prompt, and command output window

14 / 18

slide-20
SLIDE 20

GIS Ostrava 2008, January 27-30

wxPython GUI development

Layer Manager – layer management tab

14 / 18

slide-21
SLIDE 21

GIS Ostrava 2008, January 27-30

wxPython GUI development

Layer Manager – command log area tab

14 / 18

slide-22
SLIDE 22

GIS Ostrava 2008, January 27-30

wxPython GUI development

◮ Development started in the end of 2006 ◮ It is planned to be default GUI option for GRASS 6.4 (the

main release of 2008) and GRASS 7 releases

◮ The GUI composed by two components:

◮ Layer Manager allows to run different GRASS modules from

menu, includes map layer management, integrated command-line prompt, and command output window

◮ Map Display Window(s) integrates basic tools for zooming,

panning, data querying, decorations (north arrows, barscale, etc.)

14 / 18

slide-23
SLIDE 23

GIS Ostrava 2008, January 27-30

wxPython GUI development

Map Display Window

14 / 18

slide-24
SLIDE 24

GIS Ostrava 2008, January 27-30

wxPython GUI development

14 / 18

slide-25
SLIDE 25

GIS Ostrava 2008, January 27-30

Digitization tool

◮ Currently under development ◮ Fully integrated into GUI ◮ Replaces the current Tcl/Tk-based v.digit module ◮ Based on v.edit functionality

15 / 18

slide-26
SLIDE 26

GIS Ostrava 2008, January 27-30

Digitization tool

◮ Currently under development ◮ Fully integrated into GUI ◮ Replaces the current Tcl/Tk-based v.digit module ◮ Based on v.edit functionality ◮ New features implemented (based on requirements of Comune

di Trento, GIS department)

◮ Select vector objects by box/query (line length, dangles) ◮ Snap to node or vertex ◮ Snap to the vector objects (node or vertex) from background

vector map layer(s)

◮ Copy vector objects from background vector map layer(s) ◮ . . . 15 / 18

slide-27
SLIDE 27

GIS Ostrava 2008, January 27-30

Digitization tool

Copying vector objects from background vector map

15 / 18

slide-28
SLIDE 28

GIS Ostrava 2008, January 27-30

Digitization tool

Copying vector objects from background vector map

15 / 18

slide-29
SLIDE 29

GIS Ostrava 2008, January 27-30

Digitization tool

Modify attribute data

15 / 18

slide-30
SLIDE 30

GIS Ostrava 2008, January 27-30

Outline

GRASS in 2007 GUI for GRASS GIS Motivation wxPython GUI development Plans for 2008

16 / 18

slide-31
SLIDE 31

GIS Ostrava 2008, January 27-30

Plans for 2008

◮ Map Layout and Map Symbol Editor – for simple

cartographic outputs comparable e.g. with ArcGIS map layout functionality

◮ Georectification tool – is currently being developed by

Michael Barton

◮ Integrates OpenGL into Map Display Window, support 3D

rendering including 3D raster (voxels) and vector data

◮ Interactive command-line prompt, module search engine

(search GRASS module based on the given keywords)

◮ Integrated tools for remote sensing like i.class ◮ For detailed information see

http://grass.gdf-hannover.de/wiki/WxPython- based GUI for GRASS

17 / 18

slide-32
SLIDE 32

GIS Ostrava 2008, January 27-30

EOF

Grazie per attenzione!

18 / 18