Going Open Source: Migrating EPA’s BASINS to MapWindow Open Source GIS Dr. Daniel P. Ames Department of Geosciences, Idaho State University 2005 Intermountain GIS Conference Pocatello, Idaho Outline What is BASINS? Why consider open source GIS? What is MapWindow? What is the approach? What are the challenges and anticipated benefits? Ames – Intermountain GIS 2005 What is BASINS? “Better Assessment Science Integrating point and Non-point Sources” GIS-based watershed modeling and data analysis software Built by EPA to support watershed approaches such as TMDL Includes spatial and temporal data for the United States, analysis tools and models Ames – Intermountain GIS 2005 Ames GIS 2005 SETAC GIS– &Intermountain WQ Short Course, 2002 Ames – Intermountain GIS 2005 BASINS 3.1 GIS Interface Ties all software components together through ArcView 3.x and extensions. Ames – Intermountain GIS 2005 BASINS Spatial Data water supply sites • Land use and land cover (shape •• Drinking Dam sites and grid) • EPA region boundaries • Urbanized areas • State boundaries • Populated place locations • County boundaries • Reach file 1 • DEM (shape and grid) • Reach file 3 • Ecoregions • National Hydrographic Data • NAQWA study unit • • (NHD) • Major roads USGS hydrologic unit boundaries (accounting and catalog units) • Courtesy of Tetra Tech Inc. boundaries Managed area database (Federal and Indian Lands) Soil (STATSGO) Ames – Intermountain GIS 2005 BASINS Utilities and Tools Automatic data downloader and software updater • • • Spatial data: NED DEM, NLCD land cover, NHD stream networks. Temporal data: USGS streamflow, STORET water quality. Automatic updater for software updates. Data analysis tools • • • “Target” to summarize data by watershed in a region “Assess” to summarize stream quality in a specific watershed “Data Mining” to link stations to water quality and monitoring records Watershed delineation tools to identify watershed boundaries and contributing areas • • Manual - heads-up digitizing based on elevation polygons Automatic – raster DEM based algorithms for finding watersheds Ames – Intermountain GIS 2005 Data Extractor Web-linked tool to set up a new BASINS Project Ames – Intermountain GIS 2005 Downloading BASINS Core Data Once a watershed HUC is selected, the software downloads all of the base GIS and observation data for that watershed. Ames – Intermountain GIS 2005 Web Data Download Tool Additional data can be automatically downloaded from various web-sites and integrated with the base dataset. Ames – Intermountain GIS 2005 Automatic Software Updates A software updater checks for software updates which can include bug fixes as well as new analysis tools and models. Ames – Intermountain GIS 2005 Models in BASINS Multiple Objectives • • Source assessment Receiving water evaluation Various Scales • • • Local scale Watersheds Basins Various Levels of Complexity • • Screening Detailed Courtesy of Tetra Tech Inc. Ames – Intermountain GIS 2005 Models in BASINS PLOAD – export coefficient based lumped model • • Steady state, spatial, fit, deterministic. “Screening level” model for looking for spatial trends in water quality based on land cover type SWAT – soil water accounting tool • • Dynamic, spatio-temporal, process, deterministic. Agriculture-centered watershed model HSPF – hydrologic simulation program FORTRAN • • Dynamic, spatio-temporal, process, deterministic. Primarily hydrologic process model with water quality components. Ames – Intermountain GIS 2005 Simple Models in BASINS PLOAD Export Coef. Model LP = U(LPU * AU) Where: LP = Pollutant load, lbs; LPU = Pollutant loading rate for land use type u, lbs/acre/year; and AU = Area of land use type u, acres Ames – Intermountain GIS 2005 PLOAD Output Options Total pollutant loads by watershed – map and table Pollutant loads per acre by watershed – map and table Event Mean Concentration (EMC) by watershed – map and table Ames – Intermountain GIS 2005 Complex Models in BASINS B A Landuse and pollutant specific Data Landscape data C Meteorological Data Point Sources GIS D Windows interface Landuse Distribution E Core Model HSPF Stream Data F Courtesy of Tetra Tech Inc. Post Processing Ames – Intermountain GIS 2005 BASINS Architecture GIS-based main user interface • • • Currently ArcView 3.x Spatial data stored as shapefiles Temporal data stored in binary “wdm” files All key functions exist in dynamic link libraries (DLLs) and executables • • Tight integration – ArcView extension provides the GUI and calls functions in a DLL Loose integration – ArcView extension prepares input files and launches external executable Ames – Intermountain GIS 2005 BASINS 4.0 Due Spring 2006 (prime contractor: Aqua Terra Consultants) Builds off BASINS 3.1 Significant restructuring No third party dependencies or purchase requirements MapWindow Application and Plug-in Architecture Ames – Intermountain GIS 2005 Why Open Source GIS? Original intent of EPA was to provide all software and data freely because it is a federally financed project. However… No PC-based free or open source GIS alternatives in 1996. Ames – Intermountain GIS 2005 Why Open Source GIS? Software code licensed under the Mozilla Public License can be used for both commercial and non-commercial applications. Allows user-developers to access update and improve core GIS and model functionality. Ames – Intermountain GIS 2005 Why Open Source GIS? Increased distribution and use of BASINS – including internationally. Since MapWindow was released as open source in January 2005, download bandwidth from www.MapWindow.com has increased from 1 GB per month to about 15 GB per month. Ames – Intermountain GIS 2005 Open Source GIS Options www.OpenSourceGIS.org lists 189 projects (not MapWindow!!). www.FreeGIS.org lists 235 projects (yes MapWindow ) Mostly data conversion, reading and writing libraries, specific viewers, web tools and Linux/Unix tools. Ames – Intermountain GIS 2005 What is MapWindow? A “Programmable Geographic Information System” that supports: • • • • Manipulation and viewing of GIS data Analysis of GIS data and attributes Custom GIS modeling Custom GIS application development http://www.MapWindow.com/ Ames – Intermountain GIS 2005 Why MapWindow? We needed a spatial component for our modeling and data analysis projects to support: • • • Manipulation and editing of spatial data sets Manipulation and editing of attribute data Development of custom models using GIS We couldn’t find a freely distributable GIS that was functional enough to support the functions and types of analysis we needed So...with help from several funding sources including the Idaho National Laboratory (INL) we built MapWindow Ames – Intermountain GIS 2005 Data Distribution Option 1: Build a MapWindow Project and distribute it with the free MapWindow GIS application The MapWindow application is a stand alone software that is freely distributable along with your data Ames – Intermountain GIS 2005 Base MapWindow Functionality Map area for displaying data Legend and editor for creating custom color schemes for layers Toolbar and buttons to create, save, and open MapWindow Project files Toolbar buttons for adding and removing layers from the map Toolbar button for selecting features Toolbar buttons for navigating the map (zoom in, zoom out, zoom to a layer, pan, etc.) Toolbar button to Print the current map Preview Map Ames – Intermountain GIS 2005 Custom MapWindow Plug-ins Distribute data analysis functionality with your data •Water Quality Analyst •Streamflow Analyst •PhotoViewer •TIN Builder/Viewer •Grid Wizard •Model Manager •Terrain Analysis Using DEMs (TAUDEM) Ames – Intermountain GIS 2005 For Example: Watershed Information System Launch button Plug-in List Map Area MapWindow App Legend VB Plug-in Plug-in Functions Ames – Intermountain GIS 2005 Data Distribution Option 2 Use the MapWinGIS ActiveX control to create your own custom tool The core MapWindow component is a programming object that can be added to a form in Visual Basic or other languages supporting ActiveX Ames – Intermountain GIS 2005 MapWinGIS ActiveX Control Open, create, and save geo-referenced image, grid, shapefile, triangular irregular network, and dbf attribute data View, label, color, highlight, shapefile data on the map Perform spatial queries on the data Search for features with specific attributes Dynamically edit the spatial data and immediately see the changes in the map Interact with the data through the map Build TINs from Grids, Images from Grids, Shape files from TINs and Grids, Grids from Shape files, etc. Ames – Intermountain GIS 2005 Watershed Tools at USU “Pre-BASINS” Nooksack River DSS, WA Virgin River DSS, UT Big Lost River DSS, ID Watershed Information Systems • • • • Newton Reservoir, UT Otter Creek, UT Echo Reservoir, UT Strawberry Reservoir, UT Others Ames – Intermountain GIS 2005 Plug-in Development Comparison Open Source MapWindow ESRI ArcView 3.x/9.x ESRI ArcExplorer Basic GIS Data Vis. Yes Yes Yes Edit GIS Data Yes Yes No Create Custom Plug-ins? Yes Yes No Programming Language VB.NET, C# Avenue/VB None Free Viewer? Yes No Yes Developer price Free Free to write N/A extensions, users must purchase ArcView license Source Code Available? Yes No No Ames – Intermountain GIS 2005 ActiveX Control Comparison Open Source MapWinGIS ESRI MapObjects LT 2 Blue Marble GeoObjects 3.1 View GIS Data Yes Yes Yes Edit Attribute Data Yes No No Edit Spatial Data Yes No No Includes TIN objects Yes No No Smooth Redrawing Yes No No Price Free $1,000 per developer $999 per developer Royalty Structure None Negotiated $200 per CD or download Source Code Available? Yes No No Ames – Intermountain GIS 2005 The Approach Customize the MapWindow application interface using the XML configuration file Build BASINS functionality as MapWindow plug-ins Link to external DLL’s and EXE’s as needed (i.e. models). Embed MapWinGIS ActiveX in some of these as needed to provide support maps in specific tools. Ames – Intermountain GIS 2005 XML Configuration File Ames – Intermountain GIS 2005 BASINS MapWindow Plug-ins BASINS plug-ins will include All functions that were previously contained in ArcView 3.x extensions • Project management • Software updater • Data downloader • Data analysis • Models Ames – Intermountain GIS 2005 MapWindow Plug-ins Interface Ames – Intermountain GIS 2005 Challenges Although BASINS only uses a relatively small number of GIS functions, not all have not been implemented in MapWindow (i.e. clip, mosaic) Use existing free and open source libraries where possible… • General Polygon Clipper (GPC) • TAUDEM for watershed delineation Ames – Intermountain GIS 2005 Challenges Projections – Love ‘em or leave ‘em? Data formats – Personal Geodatabase? MrSid? GeoTiff? JPEG2000? • Read and write ESRI .prj files • Projection libraries – proj4 • Use other open source and free libraries. • GDAL Ames – Intermountain GIS 2005 Anticipated Benefits Finally realize the original goal of EPA in the development and distribution of a fully open and free modeling and data analysis system. User community will add and share new functions, models, analyses, data viewers, etc. Ames – Intermountain GIS 2005 Acknowledgements Paul B. Duda, John L. Kittle, Jr., Mark H. Gray, Paul R. Hummel – Aqua Terra Consultants Russell S. Kinerson, Paul Cocca, David Wells, Marjorie Wellman, Ed Partington, Lauren MacWilliams – EPA Office of Science and Technology Kurt Wolfe – EPA Ecosystems Research Division – Athens, GA Shane Cherry, Ron Rope – Idaho National Laboratory David Tarboton, Jeff Horsburgh – Utah State University Ames – Intermountain GIS 2005 What’s next?