qgis for android

Post on 21-Apr-2015

107 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

OPENGIS.CH

Quantum GIS on Android

Marco Bernasocchi

MSc in Geography with specialisation in GIS UZH

Independent programmer

Ski and Dive instructor

marco@opengis.ch

OPENGIS.CH

In this talk...

● Tell you about QGIS and the people who use it & make it

● Explain why it is important that projects like QGIS exist

● QGIS in Natural sciences● QGIS on Android● Live demo, discussion & questions

Part of this presentation are based on Tim Sutton's QGIS for humanity presentation: http://linfiniti.com/2011/11/zurich-qgis-developer-meeting-summary-november-2011/

OPENGIS.CH

Some history: proprietary GIS

● Pay to use model● Pay for support model● Pay to share model● Good software for those who can afford it, no

software for those who can't

Cc image : http://en.wikipedia.org/wiki/File:Paul_Wall.jpg

OPENGIS.CH

But, sometimes life is hard...

OPENGIS.CH

...you can barely afford good hardware infrastructure... Let alone the cost of

expensive software

OPENGIS.CH

What if there was another way?

OPENGIS.CH

...to build something bigger than ourselves...

OPENGIS.CH

...that many, many DO enjoy...

...hundreds of thousands...

OPENGIS.CH

...all around the world...

OPENGIS.CH

...and many help to build...

- slide courtesy G. Sherman

OPENGIS.CH

To make something awesome like Linux, like LibreOffice, like GIMP...

Please welcome: “QGIS and the Open Source world”

OPENGIS.CH

History of QGIS development

http://pvanb.wordpress.com/2011/01/10/how-qgis-has-grown-over-the-years/

OPENGIS.CH

QGIS development this year

www.youtube.com/watch?v=3D60XJGerDFWI

OPENGIS.CH

Now lets see some use cases...

OPENGIS.CH

Emergency response

OPENGIS.CH

Emergency response

OPENGIS.CH

Animal Tracking

OPENGIS.CH

Animal Tracking

OPENGIS.CH

Filter for Zebra

OPENGIS.CH

Zebra only

OPENGIS.CH

Web map publishing

OPENGIS.CH

Planning

OPENGIS.CH

Marster Thesis in GIS

● Visualising multivariate spatio-temporal data● Design and evaluation of an open source

software environment based on 3D DEMs and multiple linked views

OPENGIS.CH

Globe

OPENGIS.CH

Globe 3D anaglyph

OPENGIS.CH

Globe 3D on a geowall

OPENGIS.CH

Linked Visualisation Framework

OPENGIS.CH

Timeplot Summit

OPENGIS.CH

Timeplot Face

OPENGIS.CH

Helix Summit

OPENGIS.CH

Helix Face

OPENGIS.CH

QGIS Features

● PostGIS and SpatiaLite, most vector formats supported by the OGR library, including ESRI shapefiles, MapInfo, SDTS and GML.

● raster formats supported by the GDAL library*, such as digital elevation models, aerial photography or landsat imagery,

● GRASS locations and mapsets,

● online spatial data served as OGC-compliant WMS , WMS-C (Tile cache), WFS and WFS-T

● Convert other GPS formats to GPX, or down/upload directly to a GPS unit

● Perform spatial analysis, including: map algebra, terrain analysis, hydrologic modeling, network analysis

OPENGIS.CH

QGIS Features

● on-the-fly reprojection

● print composer

● overview panel

● spatial bookmarks

● identify/select features

● edit/view/search attributes

● feature labeling (with data driven labelling as well)

● vector diagram overlay

● advanced vector and raster symbology

● graticule layer

● map decorations like north arrow, scale bar and copyright label

OPENGIS.CH

QGIS Features

● digitizing tools for vector features

● field and raster calculator

● Georeferencer plugin

● Publish your map on the internet using QGIS Server or the "Export to Mapfile" capability (requires UMN MapServer)

● Adapt QGIS to your needs through the extensible python and C++ plugin architecture.

OPENGIS.CH

Subprojects

● QGIS Browser● QGIS Server● QGIS Client● QGIS on Android

OPENGIS.CH

Questions so far?

See you after the break for “Why and how go mobile?”

OPENGIS.CH

Why go mobile? Because sometimes civilisation is far away...

OPENGIS.CH

Why go mobile?

● Work on the terrain● Lightweight and portable● Automatic georeferencing and bearing● Possibility of custom calculations at input time

depending on position, bearing, …● So we can get off our offices :)

OPENGIS.CH

Why to go mobile?

● Finally widespread of (almost) adequate hardware at “normal” prices

– Good performance– Good battery life– Integrated GPS and compass– Finger and pen input– In near future rugged tablets

● Strong development of software● It's modern ;)

OPENGIS.CH

How to go mobile? By getting our hands dirty...

OPENGIS.CH

How to go mobile?

● Choose a platform– IOS and you'll have little →

hardware choice– Win mobile and you'll be →

shaking hands with Lucifer soon :) and have almost no devices available

– Android Many devices, →Linuxish, Trendy

● Adapt UI to touch

OPENGIS.CH

Strategy

● Two different version– First a 1-to-1 port of the FULL desktop

application with the same GUI ● targeting Tablets (10.1”)● Started as a Google Summer of Code project

– Later, a new application using an ad-hoc minimalistic GUI optimized for smaller screens like smart-phones

● Development not started yet

– Application installer

OPENGIS.CH

Let's get technical: Technologies

● QGIS: Qt (C++) + cmake + external libs (GDAL, GEOS, Proj4, expat, GSL, Iconv, QWT, sqlite, libpq, open-ssl)

● ANDROID: Java + Android ant build system● NDK (android native development kit): Java + C++ +

JNI + Android ant build system● NECESSITAS (Qt-android port): Qt + qmake

= BIG complex mess !!!

OPENGIS.CH

Let's get technical: implementation

● Necessitas consists of:– The Android port of the Qt libraries– Ministro II, the Qt libraries manager for android

(a sort of apt)– Java android application that takes care of the

Java to C++ (via JNI) binding of the UI and libraries dependency management.

OPENGIS.CH

Let's get technical: implementation

● QGIS on Android consists of:– The cross compiled dependencies (in form of

unversioned .so files)– An .so file (shared object) of QGIS (there is no

executable binary) and of all the QGIS libs– A necessitas based Java application

OPENGIS.CH

Let's get technical: workflow

● Cross compilation of dependencies● Cross compilation of QGIS linking the

croscompiled dependencies● Building and enhancing the Java wrapper● Packaging● Distributing● All by scripts and now automatically on the

server as well

OPENGIS.CH

Let's get technical: application workflow

● Install apk (using the installer)● On first run, the assets (svg, translations, …)

are extracted to the filesystem (this could be optimized)

● A service call is issued to Ministro II to deliver the required Qt libs. If the libs are not installed, Ministro asks to download them

● After all dependencies are load the qgis.so is loaded and its main gets executed

OPENGIS.CH

Current limitations

● No GPS nor compass reading yet● No right click gesture● Shapefiles bug preventing use of shapefiles

with strings in dbf● Some dialogs are too big● No SSL● Debug version with no armV7 optimization

OPENGIS.CH

Bug Tracker

OPENGIS.CH

Current features

OPENGIS.CH

Use cases: on terrain digitizing

● Central DB (Postgress)● Save to spatiallite locally● Go on the field and get your hands dirty● Back in the office, sync it back to the Postgress

DB

OPENGIS.CH

Multiple users on terrain digitizing

● As soon as Android QGIS will support Python plugins

OPENGIS.CH

Next Plans

● Implement GPS● Fix Shape files bug● Implement Right click gesture (long click)

OPENGIS.CH

Future Plans

● Implement Compass● Add ssl● Optimize build for arm-v7a● Fix “all” bugs at http://hub.qgis.org/projects/android-qgis/issues

● Add Python support● Create a new UI for the mobile version

OPENGIS.CH

Conclusion

We build it for you to use!

OPENGIS.CH

Conclusion

When you improve QGIS (by contributing time, money, code, translations, help on the mailing list

etc.), there is a huge multiplier effect that you don't get with proprietary software:

“By helping yourself, you help others”

OPENGIS.CH

Conclusion

Use it and join our community – become a participant in the process of making the tools you

use.

OPENGIS.CH

Conclusion

There are many other Free and Open Source GIS tools out there!

http://osgeo.org

OPENGIS.CH

What next?

You can get your copy at

http://download.qgis.org http://android.qgis.org

Visit the home page at http://qgis.org

Visit QGIS' blog to find out about us and to read many informative articles:

http://planet.qgis.org

OPENGIS.CH

Questions & Discussion

Thank you for the attention

http://opengis.ch

marco@opengis.ch

OPENGIS.CH

Demos

● Multiview Plugin● Globe● Android● Offline editing

top related