The Development of “BAU GIS” Web/Program
using Open Source MapWindow
B. Sadoun
*
, O. Al-Bayari, J. Al-Azizi and Samih B. Al Rawashdeh
Department of Surveying and Geomatics Engineering
AL-Balqa’ Applied University, Al-Salt, Jordan
Key Words: GIS, Web Interface, Open Source GIS, MapWindow.
Abstract: “BAU GIS" is a Programmable Geographic Information System that supports manipulation, analysis, and
viewing of geospatial data and associated attribute data in several standard GIS data formats. “BAU GIS”
program is a standalone application, developed using Map Window Open Source GIS and visual basic 10.0.
It has been designed to address the need for a GIS programming tool that could be used in engineering
research and project software, without requiring end users to purchase a complete GIS system, or become
GIS experts. It is a GIS modeling system, and a GIS application programming interface (API) all in a
convenient redistributable package. The BAU GIS application is free, extensible GIS that can be used as an
open-source alternative to desktop GIS, in order to distribute data to others and develop and distribute
custom spatial data analysis tools.
1 INTRODUCTION
Due to the advancement in the computing
technology and the rising need for GIS applications
(www.esri.com;
wiki/ArcInfo;
wiki/Google_Earth), more and more scientists are
developing free of charge possibilities to those who
cannot afford to buy commercial software. The main
purpose is to serve the groups who are working in
Meta Data management and who publish their works
on the World Wide Web for all users.
MapWindow: This is a mapping tool, a GIS
modeling system, and a GIS application
programming interface (API), which was developed
at Utah State University by Daniel P. Ames and a
team of students (
Appleman, 1998). It was
developed to address the need for a GIS
programming tool for research and projects, without
the need to purchase GIS system, or become GIS
experts. It is used to distribute data and to develop
custom spatial data analysis tools
(
www.mapwindow.org; MapWinGIS, 194pp).
Developers can write Plug-ins to add additional
functionality (models, special viewers, and hot-link.
Handlers, and data editors can pass these to users. It
includes standard GIS data visualization features as
well as database functions such as attribute table
editing, shape file editing and data converters.
Dozens of Standard GIS formats are supported,
including Shape files, GeoTIFF, ESRI format,
ASCII and binary grids (
GIS Fundamentals;
FOSS4G). It includes a complete ActiveX
component to instantly add GIS capabilities to the
user’s existing software product (
MapWinGIS,
194pp
; FOSS4G). Additional geo-processing
components are available for .NET-compatible
Languages. Components of MapWindow are: (1)
MapWinGIS: This is an ActiveX control, which may
be placed into any project in any programming
language that supports ActiveX. This is the main
map component - if the user wanted to write a
program that displayed shape data, for example, the
user could use this control for the display portion of
the user’s program. (2) MapWin Interfaces: Also
called the "Plug-in Interface". It is a dll file, which
will allow the user to write the user’s own plug-ins
to the main application. This may be done from any
programming Language, which supports the creation
and use of Microsoft .NET 2.0 Dynamic Link
Libraries (dlls). (3) MapWinGeoProc: This is a
.NET library of geoprocessing functions, including
tools for managing projections, clipping and
buffering.
273
Sadoun B., Al-Bayari O., Al-Azizi J. and B. Al Rawashdeh S..
The Development of “BAU GIS” Web/Program using Open Source MapWindow.
DOI: 10.5220/0004630602730277
In Proceedings of the 4th International Conference on Data Communication Networking, 10th International Conference on e-Business and 4th
International Conference on Optical Communication Systems (ICE-B-2013), pages 273-277
ISBN: 978-989-8565-72-3
Copyright
c
2013 SCITEPRESS (Science and Technology Publications, Lda.)
Setting up the Development Environment: Using
Microsoft Visual Basic 2010 Express Edition, the
Visual Studio development environment main
window is presented, to select Windows Form
Application and to give a name (BAU GIS) to the
web site. Then the process will continue to the tool
box and all Windows Forms collapsible menu then
to Map Control.
2 BAU GIS DEVELOPMENT
A. The first form user will see is the “frmIntro”
which is the introduction frame in BAU GIS (Fig.
1). This form “frmIntro” includes: Images from
BAU and two labels in the bottom of the form.
Figure 1:”frmIntro” form in BAU OSGIS Web Site.
B. The second frame is the “frmMain” form which is
the main frame in BAU GIS (Fig. 2). All other
frames are connected to “frmMain.” These are used
to apply some commands and display results. The
“frmMain” of the BAU OSGIS form consists of the
following parts:
Figure 2: The “frmMain” in BAU OSGIS Web Site.
- Main menu: Consists of five titles to give a specific
command to work (Fig. 3).
Figure 3: Main menus.
- Standard Toolbar: It consists of (14) icons; each
gives a specific task to be worked in BAU
OSGIS(Fig. 4).
Figure 4: Standard toolbar.
Figure 5: Legend used.
- Main Map: This is the utmost important part as
most of the results will be displayed in this object.
On main map you can do several functions and set
Main menu
Standard toolbar
Legend
Main map
ICE-B2013-InternationalConferenceone-Business
274
general display properties (display Map layer,
tracking layer etc.).
- Legend: This is needed in order to clarify the
symbols used to represent features on the map.
Legend consists of examples of the symbols on the
map with labels containing explanatory text. When
you use a single symbol for the features in a layer,
the layer is labeled with the layer name in the
legend. User can open attribute for the layer or show
properties, etc. (Fig. 5).
C. Many other forms like Error dialog, form about
dialog, form plug-in, form choose projection, form
project setting and others which are related to form
main (Fig.6).
Figure 6: Other forms related to main fram.
Figure 7: Classes for forms.
3 WRITING THE CODE
Classes: we wrote nearly 100 classes to use for all
forms that are related in main form such as class:
application, projection, draw, menu, layer, identified
layer etc. (Fig. 7).
Codes: Some codes are meant for class application
and description such as the code for measuring the
area of a polygon. Other codes are written for
drawing line, point, polygon with respect to the
shape file that you select from legend to start
editing, etc.
Figure 8: Modules considered.
Module: We wrote 20 modules to use for all forms
that are related to main form such as module main,
module application, among others; see Fig.8.
Running BAU GIS: When the “frm intro” appears,
it starts to load other forms that are related to form
main such as forms of plug in, etc. (Fig.1). After
loading the main form, the form of the welcome
screen will appear. Only the standard toolbars will
appear in the main form (new, open, save, print, add
data, pan, select, measure area, measure distance,
zoom in, zoom out, zoom, identify, and query. If you
want to show other toolbars related to main form
you should press plug-ins from the main menu and
choose what you need to work with.
4 IMPORTANT CONTENTS
OF THE PLUG-IN MENU
- GIS Tool: it is the function that includes the
processes that are needed to build a GIS such as:
assigning projection to grid or image or raster,
Georeferencing an image or grid, generating a
contour shape file and other processes (Fig.9).
-GPS Tool: This includes processes that should be
applied when the GPS instrument is connected into a
computer in order to process data, start logging
track, draw GPS location on map, and display GPS
information, see Fig.10.
-Image to Map Tools: This tool used to convert
image to map registration by using least square
method and to rectify image by using another
original rectified image (Fig.11).
TheDevelopmentof``BAUGIS''Web/ProgramusingOpenSourceMapWindow
275
Figure 9: Merge shape files.
Figure 10: Display GPS information.
Figure 11: Image registration.
-Path Analyzer: This is designed to draw the path of
the selected feature in shape file by determining the
Digital Elevation Model (DEM) of the rectifying
image and drawing this path as a profile to make
other processes on shape file (Fig.12). The plug-in
menu is very important.
Measuring Tool: These include function for
measuring distance, and area for the selected
features in the shape file.
-Shape File Editor: It is used to create shape file and
start editing the shape file. It includes other
processes that are related to shape file such as
snapping, edit vertices, and merge of features.
Figure 12: Path analyzer.
-Map Window Graph Tools: This is to allow
drawing graphs using one field in the attribute field
of the shape files (Fig.13).
Figure 13: Graph tools.
The Reason for designing and developing this
program is to fulfill the need of mainly our students
in their GIS projects. Moreover, we posted the
material on the web for all other users.
In order to improve our OSGIS, we have the
following suggestions for future work.
-Download Mapwindow open source program.
-Create a new VB.Net Class Library project using
Microsoft Visual Studio. Right-click on the class in
Solution Explorer and select “Properties”, Select the
References page and click the “Add” button at the
bottom of that form, then select the Browse tab and
navigate to the location of and select the
MapWinGIS.ocx and MapWininterfaces.dll;
ICE-B2013-InternationalConferenceone-Business
276
typically, found in C:\ProgramFiles\MapWindow\ as
shown in Figure 14 below.
Figure 14: Adding reference from browse.
Figure 15: Adding reference from (.NET).
-In the compile settings, it is sometimes useful to set
the build path to your MapWindow “Plug-in” sub-
directory or a sub-directory within it, such as
C:\ProgramFiles\MapWindow\Plugins\PathAnalyzer
directory. This will save you the task of having to
copy your plug-in DLL into the Plug-in directory for
MapWindow in order to load when it runs. If using
this, it is not strongly recommended not to forget
that the path must be set for both Debug and Release
properties.
-Back in your code, after the “Public Class...” line;
insert the line Implements
“MapWindow.Interfaces.IPlugin”. Then hit enter on
that interface and see how Visual Studio populates
all of the interface properties and functions found in
the IPlugin Interface.
5 CONCLUSIONS
To conclude, we presented the “BAU GIS" that is a
Programmable Geographic Information System that
supports manipulation, analysis, and viewing of
geospatial data and associated attribute data in
several standard GIS data formats. Basically, our
system has the following features and capabilities:
- It is a standalone application, developed using
Map Window Open Source GIS and visual basic
10.0.
- It uses an open Source Map Window soft.
- It has been designed to address the need for a
GIS programming tool that could be used in
engineering research and project software.
- It doesn’t require users to purchase a complete
GIS package.
- It doesn’t require users to become GIS experts.
- It is a GIS modeling system, and a GIS
application programming interface (API) all in
one convenient redistributable package.
Finally, the BAU GIS application is free and
extensible which can be used as: an Open-Source
alternative to desktop GIS, in order to distribute data
to others and to develop and distribute custom
spatial data analysis tools. For example, a researcher
or a company may want to deploy a tool that lets
users build and interact with maps of GPS data
overlaid on USGS quad maps. One approach is to
build the tool as an extension to popular GIS
software, and then require users to purchase that
software to run the extension. Alternatively, the
user/company could use BAU GIS as a platform and
build a specialized application that does the needed
function and then give it or sell it directly to end user
with no need for third party software purchase.
REFERENCES
Http://www.esri.com/software/arcgis/about/gis-for-me.html.
Http://en.wikipedia.org/wiki/ArcInfo
Http://en.wikipedia.org/wiki/Google_Earth
Dan Appleman, developing COM/ ActiveX Component
with visual basic 6, First edition, SAMS, USA, 1998.
Http://www.mapwindow.org/.
MapWinGIS Reference Manual: A function guide for the
free MapWindow GIS ActiveX component. Lulu.com,
Morrisville, North Carolina, 194 pp.
GIS Fundamentals; A First Text on Geographic
Information Systems, 3
rd
Edition. Eider Press, New York.
An Extensible, Interface-Based, Open Source GIS
Paradigm: MapWindow 6.0 Developer Tools for the
Microsoft Windows Platform. Free and Open Source
Software for Geoinformatics (FOSS4G), Cape Town.
TheDevelopmentof``BAUGIS''Web/ProgramusingOpenSourceMapWindow
277