OPEN SOURCES #13 MAPWINDOW GIS
Document Sample


OPEN SOURCES #13:
MAPWINDOW GIS
MapWindow GIS demonstrates that Open Source and Windows are
DANIEL AMES CORRECTS THE COMMON not mutually exclusive by providing an extensible desktop applica-
MISCONCEPTION THAT OPEN SOURCE IS tion which is both built on top of .NET and available to all for free.
INCOMPATIBLE WITH MICROSOFT AND THE “Open source software is the last bastion of Stalinism!”
WINDOWS OPERATING SYTEM. So was told a group of open source MapWindow GIS programmers at a
recent professional conference. The speaker represented a proprietary
software development company and apparently was not aware of the
rapidly growing market for open source services and consumer
demand for transparent, extensible, non-proprietary software solutions.
Indeed such misconceptions about open source software are common.
For example, “open source is for hackers and code jockeys,” and “open
source is the domain of command-line Linux junkies.” Abating these
misconceptions is a central focus of the MapWindow GIS project.
A Lightweight Extensible Desktop GIS
The MapWindow GIS desktop application is a free and simple to use
data viewer built on the Microsoft .NET Framework and intended for
users on the Windows operating system. MapWindow GIS supports a
variety of raster and vector file formats (through the Geospatial Data
Abstraction Layer – GDAL). Built-in functions include layer and legend
management; symbology for vector and raster data; shapefile and attrib-
ute table editing; data query, merge and reprojection; and labeling and
other essential GIS capabilities. Additionally a simple plug-in interface
allows third party programmers to add new functionality using any .NET
language. The MapWindow GIS desktop application is used throughout
44 September 2008 | GEOconnexion International Magazine
geoprocessing tools (e.g. based on GRASS
modules) as standalone .NET assemblies which
can then be used by other developers.
The MapWindow GIS User-Developer
Community
Without doubt, the greatest asset to any open
source project is its user-developer community.
MapWindow.org hosts an active and engaged
user-developer community who all share the
common (often need-driven) goal of robust
GIS tools and programming components for
the Windows platform. End-user tools in simple
installation packages and utilities developed by
community members are provided as free
downloads (the MapWindow application
averages 6000 downloads per month). A
Subversion code repository houses all project
source code and is regularly accessed by
hundreds of code downloaders and 30+
The MapWindow GIS desktop application showing vector and raster data, a terrain registered code committers. A Bugzilla-based
analysis plug-in, and embedded scripting editor.]
bug tracking system is used to track and
An Open Source ActiveX Map discuss bugs and feature requests. And a
Component Phorum-based discussion forum is used by
A core component of the MapWindow GIS developers and end-users alike to discuss the
open source project is the MapWinGIS.ocx project, answer questions, and share develop-
ActiveX control. This component is built on the ment ideas. Indeed, since all MapWindow
Microsoft Win32 GDI API and can be used to source code is licensed under the Mozilla
add GIS capabilities to any software that Public License 1.1, the components can be
supports COM and ActiveX controls (e.g. Excel, used in commercial applications (as well as
Access, Delphi, Visual Basic 6, VB .NET, C#, C++). freeware, shareware, etc.) Because of this, the
With over 28,000 downloads from the discussion forums also become business
MapWindow.org website, this component has exchange arenas for budding entrepreneurs,
found its way into hundreds of research and companies, and government agencies alike –
commercial software applications. Third party so much for Stalinism.
developers have incorporated the component
MapWindows application in into taxi-cab tracking software in Malaysia, ship Summary
the Netherlands] tracking software in Florida, fire management In summary, the MapWindow GIS project
the world by individuals, companies, non-profit software in Canada, and graduate student attempts to fill the critical niche need for open
and government organizations as a GIS data theses around the world. The component source GIS programming components for the
distribution and visualization platform. attempts to serve as a replacement for the ESRI Windows operating system and its 90% share
MapObjects® component as an embeddable of the desktop client market. Built on the .NET
Plug-ins and Application mapping widget for third party software. Framework and focused primarily on providing
Customization extensible developer tools rather than end-user
The MapWindow GIS desktop application can Fully Interface-Based GIS Components software, we expect the project to continue to
be customized to meet the needs of specific The MapWindow GIS plug-in interface capital- evolve and grow as another vibrant flowerbed
end-users through the development of plug- izes on .NET support for truly object-oriented in the greater garden that is the larger open
ins and customization of the graphical user class inheritance and implementation by source GIS community.
interface XML-based configuration file. The allowing third party developers to implement a
largest such project is the U.S. Environmental single, “IPlugin” interface and compile their Links
Protection Agency’s BASINS system for code to a .NET assembly which is then immedi- MapWindow GIS project home:
watershed modeling and water resources data ately recognizable as a plug-in. A similar http://www.MapWindow.org
analysis. The BASINS project builds on approach to modularization is currently being US EPA’s BASINS watershed analysis system:
MapWindow through the introduction of 20+ introduced at all levels of the MapWindow http://www.epa.gov/waterscience/basins
plug-ins that perform specific data analysis source code. Under the new design, third party The Open Source Geospatial Foundation
tasks in a GIS environment. Third party plug-in developers will be able to extend every (OSGeo): http://www.osgeo.org
developers have full access to the map, legend, element of the software through implementa-
toolbar, menu bar, and all underlying geopro- tion of interfaces. Support for new data types Article by Daniel P. Ames, Ph.D.
cessing functions through code and hence can can be introduced by implementing an ILayer (amesdani@isu.edu) is a professor of Geosciences
focus on creating discipline specific tools using interface. An IMap interface defines a map at Idaho State University where he leads the
existing GIS capabilities. BASINS is currently component, whether built as a DirectX 3-D development of MapWindow GIS – a .NET based
distributed to water resources professional map component, a GDI-based 2-D map GIS developer platform for the Microsoft Windows
throughout the world, many of whom contin- component, or future component that operating system.
ue to extend and expand the core functionality implements the same IMap interface (e.g. for
through the open programming interface. Windows Mobile). Likewise, an ITool interface
will allow third parties to create new low-level
www.geoconnexion.com 45
Related docs
Get documents about "