History and Acknowledgements |
Top Previous Next |
|
Walls is derived in part from a mainframe-based FORTRAN program, Ellipse, I wrote in the mid 70's and which was used for many cave surveying projects in Texas, Mexico, and Montana for a period of about ten years. The traverse and system statistics now displayed in Walls are identical to those in the Ellipse "string listings". In a 1980 AMCS Activities Newsletter article I describe the method used by Ellipse for storing and adjusting drawn passage outlines. Nearly the same morphing algorithm forms the basis for the Walls SVG round tripping capability. In 1982, a Pascal language version of the adjustment and error analysis code, NET3, was created to run on CP/M-based microcomputers. The algorithms are described in "Averaging Network Elements", Compass & Tape, Vol 4, Nos 3 & 4, Spring 1987. In 1990, an updated C language version, NET4, was incorporated in John Fogarty's DOS program, CaveView. Finally, NET4 was recompiled as a Windows dynamic link library (DLL) and used, in early 1994, as the basis for the first version of Walls.
There have been many cave surveyors who by using Walls with their own data and providing feedback have participated in the design effort. They include Aaron Addison, Stan Allison, Jerry Atkinson, Jeff Bartlett, Jim Borden, William Elliott, Jerry Fant, Terry Holsinger, Scott House, Mark Minton, Brian Signorelli, Orion Knox, Pete Lindsley, Joe Mitchell, Bob Osburn, Mark Passerby, Ron Ralph, Peter Sprouse, Bill Stone, and George Veni. If you find that further development of this program stalls, check with any of them; they'll probably be up-to-date on what new and useful software is available regardless of its source.
Contributions in the form of design ideas and feature requests continue to shape the program. Over the last 30 years or so, Bob Thrun (developer of CMAP) has shared with me his programming ideas and plenty of survey data for testing Ellipse and Walls. One of his contributions is replacement of the term "link" with the more descriptive "traverse chain." Dale Pate provided data from the Lechuguilla Cave mapping project. Jim Borden helped design the Page Layout dialog and is responsible for numerous improvements related to large project management. Mike Yocum assisted in an overhaul of the SEF processing and shapefile export functions. Pete Lindsley encouraged and provided information for the GPS download feature. Bob Osburn is responsible for the generated screen maps being made interactive. Scott House has suggested significant user interface improvements (data file renaming and default view control). Mark Passerby has helped refine the SVG-related tools for creating vector-based cave maps.
Mike Yocum, the late director of the Cave Research Foundation's Educational Resource Development Program, assisted in the development of the documentation, the setup program, and several other Walls features. He also encouraged wider use of the program. Although I never met him in person, I feel fortunate to have had him as a friend and to have worked with him on both Walls and a CRF project he managed for preparing Mammoth Cave survey data for use by the National Park Service.
More programmers than I can recall have contributed indirectly by making their tools, design ideas, and code libraries freely available. Since just listing them would be a research project, I'll provide only a partial list for now: The color selection dialogs are derived in part from Chris Maunder's color picker control and Joel Holdsworth's CGradient and CGradientCtrl classes. Their articles are available at www.codeproject.com. Both the backup archiving and SVG import/export features in Walls take advantage of compression and decompression functions in zlib, a library developed by Jean-loup Gailly and Mark Adler. The regular expression search feature is based on PCRE, written by Philip Hazel. The GPS download feature was developed with the aid of code fragments from gpstrans, a program written by Carsten Tschach. Both gpstrans and the geographical calculator in Walls have parts taken from John F. Waers' program, MacGPS.
Anyone interested in cave mapping software will know that several caver-programmers have developed programs and are making them publicly available as either freeware or shareware. To check them out, simply browse the Internet for "cave surveying". My impression is that there has been surprisingly little competition or cross-program influence, the main tendency being to go it alone. There are just too many different problems related to cave mapping and strategies for solving them. One program, however, has been particularly influential from my standpoint. Doug Dotson's DOS program, SMAPS, largely motivated Walls development and shaped its initial design. SMAPS pioneered the approach of organizing cave survey data in a flexible, tree-like hierarchy -- one in which branch data sets are easily rearranged and selectively processed. It also introduced a survey exchange format (SEF), making it possible for Walls and other programs to import raw survey data while preserving the hierarchy.
Finally, the work of several other cave software developers should be acknowledged. My implementation of least-squares in Ellipse was largely inspired by a 1970 NSS Bulletin article on loop-closing by Schmidt and Schelling. Also, the resemblance of the Walls built-in geographical calculator to Garry Petrie's stand-alone program, GEOMAG is not accidental. You can find this and his shareware cave mapping software, WinKarst, on his web site.
|