Sunteți pe pagina 1din 61

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

S-ar putea să vă placă și