OpenOceanMap: - PowerPoint PPT Presentation

1 / 24
About This Presentation
Title:

OpenOceanMap:

Description:

Windows inherit from QT # Main window used for ... API - http://svn.qgis.org/api_doc/html/classes.html. QT API - http://doc.trolltech.com/4.3/index.html ... – PowerPoint PPT presentation

Number of Views:80
Avg rating:3.0/5.0
Slides: 25
Provided by: aaronr1
Category:

less

Transcript and Presenter's Notes

Title: OpenOceanMap:


1
OpenOceanMap Deploying cross-platform
geospatial desktop applications for decision
support utilizing Python, QGIS, and QT
Presented at FOSS4G 2007 by Aaron Racicot
GIS Programmer, GISP Ecotrust
(www.ecotrust.org) aaronr_at_ecotrust.org
2
Socio-Economic Data - MLPA
3
Decision Support Pattern
Field Work Back at
the Office
Field Data Collection
Data Analysis
QA/QC/Feedback
Inform Decision Makers
4
Old Version of Tool
5
New Version of Tool
6
Being Developed in the Open
7
Why Open Source?
Cost Freedom Community Get Good
Karma Opportunity to innovate Very Fast
Development Cycle Very Low Barrier To Dev
Community Entry
8
Tools Used
9
(No Transcript)
10
Requirements to build
11
QT and QGIS API exposed
PyQt4 includes for python bindings to QT from
PyQt4.QtCore import from PyQt4.QtGui import
QGIS bindings for mapping functions from
qgis.core import from qgis.gui import
12
Windows inherit from QT
Main window used for houseing the canvas,
toolbars, and dialogs class MainWindow(QMainWindo
w, Ui_MainWindow) def __init__(self,splash)
QMainWindow.__init__(self) required by
Qt4 to initialize the UI self.setupUi(self)
13
Create a map canvas from QGIS
create map canvas self.canvas
QgsMapCanvas(self) self.canvas.setCanvasColor(QCol
or(255,255,255)) self.canvas.enableAntiAliasing(Tr
ue) self.canvas.useQImageToRender(False) self.canv
as.show()
14
Hook up simple toolsZoom In
create a little toolbar for map
tool self.toolbar parent.addToolBar(MapTool") s
elf.toolbar.addAction(parent.mpActionZoomIn) sel
f.toolZoomIn QgsMapToolZoom(self.canvas,False) s
elf.toolZoomIn.setAction(parent.mpActionZoomIn)
Connect the button signal to a
slot QObject.connect(parent.mpActionZoomIn, SIGNA
L("triggered()"), self.zoomIn) Signal handler
for zoom in button def zoomIn(self) self.canvas.
setMapTool(self.toolZoomIn)
15
Embedded Python Interpreter
16
Bundle it all up py2exe
from py2exe.build_exe import py2exe from
distutils.core import setup opts
"py2exe" "includes" "sip",
"packages" "qgis","PyQt4", "dist_dir"
"bin", setup(options opts,
console"script" "openoceanmap.py"
) C\openoceanmapgtpython setup.py py2exe
17
OpenOceanMap
18
Post Interview - Raw Shapes
19
Post Interview - Sum
20
Other parts QA/QC
Field Work Back at
the Office
Field Data Collection
Data Analysis
QA/QC/Feedback
Inform Decision Makers
21
User Driven QA/QC
22
Other parts of the processDSTs
Field Work Back at
the Office
Field Data Collection
Data Analysis
QA/QC/Feedback
Inform Decision Makers
23
What else am I doingDSTs
24
Where to go for more info
  • Ecotrust
  • http//www.ecotrust.org
  • Reprojected
  • http//www.reprojected.com
  • OSGeo
  • http//www.osgeo.org
  • OpenOceanMap
  • http//trac.infodrizzle.org/openocean/
  • PyQGIS
  • Bindings - http//wiki.qgis.org/qgiswiki/PythonBin
    dings
  • API - http//svn.qgis.org/api_doc/html/classes.htm
    l
  • QT API - http//doc.trolltech.com/4.3/index.html
  • PyQT Docs - http//www.riverbankcomputing.com/Docs
    /PyQt4/pyqt4ref.html
  • SIP Docs - http//www.riverbankcomputing.com/Docs/
    sip4/sipref.html
  • Desktop
  • QGIS - http//qgis.org/
  • GRASS - http//grass.itc.it/
  • OSSIM - http//www.ossim.org/
  • UDIG - http//udig.refractions.net/
Write a Comment
User Comments (0)
About PowerShow.com