WALLS - Tools for Cave Survey Data Management
Version 2, Build 2016-07-31
The Walls download site is hosted by the Texas Speleological Survey. Additional program information, along
with a link to the most recent Walls build, will normally be available at the TSS Web site.
To review the changes in the most recent program update, see the RECENT BUILD HISTORY section below. Because of the
way Walls is being developed, it's almost certainly the case that the latest build is an improvement over the previous build and
compatible with existing project data. The build date is displayed in the program's About box.
To download the Walls setup program, select this link:
When the download is complete, run Walls_setup.exe and follow the
instructions. If upgrading, you can use your existing Walls program
directory without explicitly uninstalling the earlier version. You shouldn't
have to purge work files and lose project-specific option settings. The prior official release
is still available here,
but if you ever decide to revert back to an older version of Walls you'll have to
uninstall the newer version first.
A printable PDF manual, essentially a copy of the online help,
is installed during setup and is also available separately:
All that's missing in the manual are the pop-up windows with short descriptions.
Also part of the installation are two sample projects that demonstrate both basic data entry and SVG round-tripping.
If you're running a version of Windows later than XP, the samples will be installed in the Public folder, normally
C:\Users\Public\Walls Projects. Otherwise they are installed in Projects, a subfolder of the Walls
application golder. After opening the first project, Kaua North Maze.wpj, read the contents of the first
project tree item, a text file that describes the sample data and serves as a brief introduction
to Walls2D and SVG map production.
A second sample project, Tutorial.wpj, can serve as a getting started guide. While it also has an SVG
source file, its main purpose is to illustrate basic features of a georeferenced data set.
SVG VIEWER SETUP
Walls incorporates an SVG map
viewer, Walls2D.exe, that's launched for viewing exported SVG
map documents. Much of its functionality, however, requires the
presence on your system of Adobe's free SVG viewer plug-in, ASV 3.
If you don't already have ASV installed, please download and run the
executable setup file using this direct link to Adobe's download area:
The setup is quick and there are no options.
Although Adobe has ended official support of the viewer, the
ASV EOL FAQ
states the following :
Adobe does not currently have plans to remove Adobe SVG Viewer from the Adobe.com download area.
Adobe recognizes that customers have built Web applications that depend on ASV being available for
download, and although Adobe does not plan to develop ASV further, we plan for the existing versions
to be available for download as long as our customers rely on them.
RECENT BUILD HISTORY
Version 2, Build 2016-07-31
Several bugs introduced with the 2016-07-13 build were fixed. Passage rays were
not compiled correctly, resulting in truncation. The color selection dialogs failed
to function properly on Windows XP systems only. Thanks to Igor Teleshman for
helping resolve these issues.
Help file and user interface improvements, mostly related to SVG round-tripping.
Version 2, Build 2016-07-13
Importing Compass data is now a built-in feature, with project (MAK) files being directly convertible
to georeferenced Walls projects. Data made available by many others, including Larry Fish,
Peter Sprouse, Fred Devos, Jim Coke, David Mayor, and Jerry Atkinson
helped make this possible.
The functions for importing and exporting Survey Exchange Format (SEF) files are more comprehensive,
with several SEF support levels offered.
User interface improvements: Mouse scroll-wheel zooming
and right-drag panning have been implemented for both preview and screen maps. Screen map
windows can also be resized without restriction by dragging their borders. When left-dragging
with the distance measuring tool, the distance and azimuth are displayed next to the mouse
cursor instead of on the status line.
Screen maps now have a scale bar alongside a north indicator. Right-click the bar to switch between
English and metric units. (This will also affect the distance measuring tool.) Map windows are also
dynamically updated as controls in the Segments and Geometry dialogs are manipulated, such as when
changing colors and styles, or changing the selected traverse (or floating it). Other dialogs have
Apply buttons that will update the appropriate map windows.
Multiple open projects and compiled branches with multiple (free-hanging) components are better
handled when each have open map windows subject to being updated. When a compilation produces
multiple components, branches of the Segments tree are grayed when they don't contain vectors
of the selected component.
When a selected traverse is floated, the "Attach other end" toolbar button affects both preview
and screen maps when the Map dialog option to show the Selected traverse is enabled. This operation
toggles the attachment end of the unadjusted version of the traverse, making misnamed stations,
for example, easy to spot on a labeled screen map.
The context menus for a clicked-on survey vector, both in the text editor and on screen maps,
has a "View segment" option alongside "View statistics" and "Properties." This activates the
Segments page of the Review dialog, allowing the vector's assigned display attributes to be
quickly edited or reviewed. Jim Borden suggested this enhancement.
For better compatibility with dive surveys, bisector-style LRUD measurements (LRUD=FB and LRUD=TB)
are now supported as recommended by Osama Gobara. This style defines a cross section aligned
with the bisector of the angle between two adjacent shots.
SVG-related changes: The installation now includes a script that converts the specific SVG groups
containing Walls-adjusted artwork to true layers in Adobe Illustrator, a process previously done
manually. An export involving two merged SVG files could on occasion produce a file containing an
undefined or duplicated symbol name. Also, the merged export will now include transformed
w2d Legend data from both files, not just the first one. Peter Sprouse has helped
resolve these and similar issues.
The program failed to catch as data errors cases where the recorded instrument and target heights
are incompatible with the taped distance. This can happen when the taping method is not
instrument-to-target and the distance is smaller than the IH / TH difference. The result is
either a contradiction or there being two possible solutions for the survey vector. Such cases,
more likely in dive surveys, now trigger errors or warnings thanks to Andy Edwards, who discovered
the redundancy problem.
When one changed the option to generate UTM/UPS grid-relative coordinates after a preferred map view
had been saved, a blank preview map would appear after the recompile. The program now clears the
saved view after such a change. George Veni reported this bug.
Igor Teleshman discovered that passage rays (wall shots) with negative inclinations appeared
correctly in Walls3D, but were displayed with zero inclinations in profile view on screen maps and
printed maps. This is now fixed.
Numerous, mostly minor improvements either forgotten or not worth listing here. The code was ported
to Microsoft's latest C++ compiler and libraries (Visual Studio 2015) and should be compatible with
Windows 7, 8.x, and 10. For the time being, it also remains compatible with Windows XP.
Version 2, Build 2015-04-05
Incorrect compilation settings for the previous build (2015-03-17) broke
compatibility with Windows XP. This should be fixed in the current build,
thanks to Igor Teleshman's report of the problem.
This build incorporates the latest International Geomagnetic Reference Field (12th Generation)
model which covers the period Jan 1, 1900 through Dec 31, 2019. You can verify that the declinations
displayed by the Geographical Calculator are consistent with those computed with the
at the NGDC web site. You can verify both declinations and magnetic field strengths at the
British Geological Survey website.
The SVG roundtripping code will log a larger number of diagnostic messages of a certain kind before aborting --
useful when changing the set of surveys associated with an Illustrator document (source SVG).
Version 2, Build 2014-11-01
Miscellaneous minor improvements to the code and documentation. The link in the
About Box now points to this page on the new TSS website.
The program's code was ported to Microsoft's latest compiler version (VS 2013).
A Walls release compiled with an earlier version can still be downloaded via this link.
A bug was fixed that caused an exported wall outline shapefile to have the wrong
scale if the chosen coordinate system was Lat/Long instead of UTM.
Version 2, Build 2013-05-25
The VRML export function was modified to output point clouds defining cave passage
walls. The lines connecting the points to a station or measuring device are also
optionally exported. Joe Mitchell, who is developing an electronic cave mapping
device (Caveatron), assisted by designing a data format and providing files
generated by the prototype. The VRML viewer, Walls3D, was also updated to display
higher-quality (anti-aliased) lines and points.
Version 2, Build 2013-01-29
Following a suggestion by Peter Sprouse, the SVG export feature was enhanced to
support merging of artwork from two separate SVG files. This represents a major
upgrade to the program's roundtripping capability. For more information see "SVG
Export Dialog" in online help.
Live paint objects in Adobe Illustrator documents should now be adjusted
properly during roundtripping. Aaron Addison's work prompted this fix. Also, SVG's
<pattern> element is finally supported thanks to Jeff Bartlett. This allows use of
pattern fills for objects in any adjustable layer. See help topic "Live Paint and
In a merged SVG export, if a source SVG contains identifiers for vectors missing
in the survey data, up to 500 such cases will simply be ignored. Whether or not this
limit is reached, the orphaned vectors are listed in a log file so they can be
reviewed. It's possible that surveys were inadvertently excluded from compilation.
Or a few vectors could have become obsolete due to data corrections, in
which case relying on the shifts in other vectors for artwork adjustment and
touching up manually is usually all that's required.
Other SVG export improvements include displaying adjustment details whether or
not the Walls2D viewer is launched. As suggested by Jeff Bartlett, the survey
vector experiencing the greatest endpoint coordinate change is listed along with
the amount of shift. A bug was also fixed that caused gradient fills to be removed
if they were encountered in a sym group, such as in passage cross sections.
When the units of exported shapefiles are specified as Lat/Long (the new
default), the coordinates that appear in the attribute table will have seven
decimal places of precision. Also, the elevations (Z components) of 3D shapefiles
are scaled from meters to degree units as required by the format definition. For
best compatibility with other software you should specify UTM units for 3D
Version 2, Build 2011-04-12
This build was created with a new compiler version that targets only systems
running Windows XP SP2 or later. If setup tells you that your version of Windows is
incompatible, you can install the previous Walls build that's available on the
website. Please let me know if you found this to be necessary.
The Walls2D SVG viewer will notify you if a new install of Adobe's SVG viewer
is required due to Internet Explorer being upgraded to version 9. This IE upgrade,
infortunately, disables the viewer installation, causing the prior version of
Walls2D to produce a "script error" upon startup.
A compiled dataset can straddle UTM zone boundaries, with fixed points defined
in more than one zone. For completeness, the Universal Polar Stereographic (UPS)
coordinate system is also seamlessly supported.
The geographical calculator has been enhanced in multiple ways. It performs
coordinate conversions across UTM/UPS, UTM zone, and equatorial boundaries. The
intensity of the magnetic field's horizontal component is displayed alongside
declination. You can transfer coordinate pairs via the clipboard, the supported
formats being suitable for pasting directly into the search boxes of online mapping
programs. The geodetic datum that's initialized by default is WGS84 instead of
NAD27. (See the new sections under Geographical Calculator.)
Options to produce either UTM/UPS or Lat/Long coordinates has been added to both
the coordinate listing and shapefile export dialogs. For shapefiles, Lat/Long
degrees is now the default coordinate type.
Miscellaneous fixes: An SVG export involving a merged Illustrator 11 file could
on occasion produce an invalid SVG that Illustrator couldn't open. Thanks to Stan
Allison for reporting the problem. As suggested by Bob Osburn, gradient color
assignments, such as color-by-depth, are recognized when exporting SVG vector
layers. Jason Richards discovered that network pathnames were not being handled
properly, preventing access to project datasets on a local network.The undo/redo
feature in the text editor, if used in a certain way, could cause a program
shutdown. The Geographical Reference page would sometimes display the datum name
incorrectly. Modules wallmag.dll and wallzip.dll have been removed, the code now
part of the exe.
Version 2, Build 2010-05-14
The geographical calculator module included with the last build (wallmag.dll, 2010-01-14)
has a defect that causes incorrect magnetic declinations to be
computed for a 5-year period beginning in 2005. The effect is that a correct
declination computed for Jan 2005 is also returned for subsequent dates, up
until Jan 2010. Thereafter, correct values based on the IGRF-11 model are
returned. The error introduced will depend on location. For example, in central
Texas the model's declination, instead of remaining constant, actually decreased a
total of 0.6 degrees over that period. This build includes a repaired calculator module that
should now agree with the
at the NGDC web site.
Thanks to David S. Taylor and Jeff Bartlett, respectively, for discovering and reporting the discrepancy.
Version 2, Build 2010-01-14
Igor Teleshman discovered that "percent grade" inclination units were being incorrectly
processed as proportional to the angle instead of proportional to the tangent of the angle.
The effect, unfortunately, was an easily overlooked systematic error in situations where
"Percent" was specified for a V, VB, IncV, or IncVB units override. For example, a 5% grade
is 2.86 degrees, not 2.25 degrees.
This build incorporates the latest International Geomagnetic Reference Field
(IGRF) model, which covers the period Jan 1, 1900 through Dec 31, 2014. Also, a problem
was fixed that caused the geographical calculator to stop working properly
when the previous model expired on Jan 1, 2010. You can compare the declinations
computed by the calculator with output produced by the
at the National Geophysical Data Center (NGDC) web site.
As suggested by Bob Osburn, the Editor Options dialog now has settings to control the
initial width and height of an opened editor window. The default width was increased
from 60 to 80 characters.
Several minor bugs were fixed, one being the occasional display of an empty or corrupted
datum name on the Geographical Reference page of the Properties dialog.
Version 2, Build 2008-12-26
Several Vista compatibility issues are addressed in this build. When run under Windows
Vista the Walls setup program stores the sample projects in Vista's "Public" folder if
the "Program Files" folder is chosen as the install location. This is to allow read/write
accessibility for all users. Also, the SVG map viewer, Walls2D, no longer uses the application
folder for temporary files. Under Vista that would disable the toolbar buttons that
control SVG layer visibility. See the above note regarding the
Vista compatibility (and future availability) of Adobe's SVG viewer.
Version 2, Build 2008-08-22
The substantial change in release B8 is the use of a different file
extension for project script files. The required extension is now WPJ instead of
PRJ. The renaming was done to avoid conflicts with the projection files used by
modern GIS software. The transition should be entirely automatic. Walls will still
recognize the PRJ files created by earlier releases but will prompt for confirmation
and automatically change their extensions to WPJ in the process of opening them.
New compiler versions (both for code and online help) were used for this
release. Windows Vista compatibility has been improved, for example the pop-up
windows in online help should now function properly under Vista.
You'll find a printable version of the online help, Walls_manual.pdf,
in the doc subfolder. There are several new or revised topics, mostly related to
SVG round tripping.
When exporting UTM shapefiles for datums NAD27, NAD83, and WGS-84, the program
now produces ESRI-compatible projection files with extension PRJ. The presence of a
PRJ component greatly simplifies adding shapefiles to GIS projects, allowing for
the automatic conversion of coordinates to a different datum or map projection when
Miscellaneous minor fixes. An option to suppress the averaging of foresights and backsights was added to
the data format due to a suggestion by Bryan Signorelli.
Version 2, B7 Release, Build 2007-09-23
The SVG export function was revised to work around an annoying problem present in
all recent versions of Adobe Illustrator (especially CS3 it seems), which is the
tendency to occasionally rename an object or layer unnecessarily when writing an
SVG. For example, w2d Survey might be renamed w2d Survey_1_, even when it isn't
necessary for insuring ID uniqueness (an SVG requirement). This would cause Walls
error messages such as "invalid layer name" or "no vectors in view", the easiest fix
being to edit the SVG manually. To get around this bug, suffixes like "_1_" are now
removed during the processing of w2d layer names and vector IDs.
Two additional levels of prefixing were implemented with directives #PREFIX2
and #PREFIX3. This simplifies the merging of large surveying projects, where the
original level-one prefixes (field book numbers, for example) are not necessarily
unique and would cause conflicts. Jim Borden suggested this enhancement.
Miscellaneous fixes. In earlier builds, clicking the "Data summary" toolbar button without the
review dialogs being open would cause the program to close unexpectedly. The program should
now start up noticeably faster.
Version 2, B7 Release, Build 2006-06-02
IMPORTANT: If you downloaded a copy Walls from this site anytime between 2006-05-23
and the time of this build, you must optain this update to correct an issue
with first-time project compilations (which would fail with an error message).
The SVG merge function was fixed to properly support character entities
representing Unicode characters. Stan Allison helped discover this
limitation. A few other improvements were made to the SVG export module,
now at version 1.13.
The project management features were improved based on suggestions from
Jim Borden and Scott House. Duplicate shots are now optionally logged. It's now
possible to delete data files associated with project tree branches. The text
editor's search and replace dialog is now properly disabled for read-only files.
Miscellaneous fixes: The format of exported 3D shapefiles was not strictly correct, potentially
causing problems with readers. The button "Flag Symbols" on the Segments page was re-enabled
to open the Flag and Marker Symbols dialog. The report option to organize stations
by flag name now prints the flag name headings correctly.
Version 2, B7 Release, Build 2005-12-01
The SVG-related features, including the tutorial project's source SVG,
Polygon_w2d_mrg.svg, were updated to support roundtripping with the latest
Illustrator version, 12 (or CS2). For details, see Roundtripping SVG Maps - Instructions for Illustrator
Users in the help file.
The modules wallnet.dll and wallsrv.dll were eliminated, their code now part of Walls32.exe.
Also, to avoid incompatibilities with some laptop versions of Windows, the program files are no longer compressed.
The link to the Walls home page in the About box was updated.
Version 2, B7 Release, Build 2005-03-10
This release fixes a bug (discovered by Jim Borden) that causes text to sometimes not scroll
properly in an editor window.
Miscellaneous help file changes were made. Victor Komarov corrected an error in
the Data Screening Tutorial topic.
Version 2, B7 Release, Build 2005-01-10
The latest version of the
Geomagnetic Reference Field (IGRF) was incorporated. This is the mathematical model used to
estimate declination when the geographical calculator is active or when
declinations are computed automatically during data processing. The model now covers the period
Jan 1, 1900 through Dec 31, 2009.
A multi-level undo/redo capability was added to the text editor. This is accessed
in the standard way: from the toolbar, edit menu, or with keystrokes Ctrl-Z and
Ctrl-Y. It's now possible to reverse all changes made to a file since it was opened.
An option to enlarge LRUD polygons by a specified amount was added to the
Passage Display Options dialog as suggested by Mark Passerby. This can be used in
connection with SVG roundtripping to produce gradient-colored passage floors.
Making the polygons larger allows portions outside the drawn passage walls to
be clipped so that floor regions are entirely covered.
Version 2, B7 Release, Build 2004-12-17
- Support was finally added for the manipulation and highlighting of traverse chains
in the Geometry and Map review pages. If you're already somewhat familiar with the data screening tools in Walls, you
can review a documentation
excerpt to get a sense of what this entails.
- Improvements were made to the report dialogs and their methods
of access via tool bar and file menu. Coordinate reports can be restricted to data appearing within
the current view frame. When the program sorts project tree branches and station
names in reports, strings of digits are handled properly -- for example, "A30" comes before "A100".
To help prevent inadvertent editing, project files can be compiled, opened, and navigated in
read-only mode. Jim Borden is largely responsible for these changes.
- There is a new item on the right-click context menu for screen maps named Resize map frame.
It allows us to quickly change the overall map size (resolution) without affecting the view or
other map attributes. The change can apply to just the active map window or can be saved as the default
for new map windows.
- To aid computer map drafting, an SVG export option is now available that places
cross section rectangles alongside LRUD bars. This can occur only for LRUD
specifications with a "C" argument following the last dimension number or facing
azimuth. Examples: *1,3,1,0,c*, <.5,1,5,1,270,C>. The check box for this option is
in the Advanced SVG Export Settings dialog. (Thanks to Mark Passerby for detailing
- Backup archives now store items that were originally outside the project's folder
tree in suitably named subfolders. The stored PRJ file is modified accordingly,
preventing the "blank page icon" problem that sometimes occurred after extraction.
Bill Stone encouraged this improvement which simplifies transporting large
projects to different computers.
Version 2, B7 Release, Build 2004-08-19
- This is a maintenance release of Walls with miscellaneous improvements
to the interface, help file, and error reporting. The search and replace functions were
significantly upgraded. See Program Operation - Search Operations in the help file.
Version 2, B7 Release, Build 2004-05-20
- SVG roundtripping now works with the latest Adobe Illustrator version (11 or CS), which has improved support for the SVG format. Also, with both AI10 and AI11 you can now decorate your maps with linked or embedded images, rotated or path-aligned text, and SVG filter effects. Such artwork will correctly conform to view or survey changes after processing by Walls. This processing has been revised so that symbols, text, and unnamed groups of objects can be placed in shp layers and their north-relative orientation will be preserved. (Unlike passage outlines, for example, they will be translated and scaled but not morphed.) As before, placing such objects in sym layers preserves their page-relative orientation. Numerous other improvements were made to SVG export/import operations. See SVG Layer Definitions in the help file and the updated sample in the Walls\Projects\Tutorial Project folder.
The shadowed box at left was created with an SVG filter, which is more flexible and efficient than an effect that has to be rasterized and embedded as an image. The large rocks are symbol instances placed in layer w2d Detail shp. Their positions might change with an adjustment, but their orientation with respect to the rotated grid is preserved. This is also true for the path-aligned text.
- The Color Gradient Dialog now has an "Apply to Map" button that updates (without closing the dialog) all open map frames with the color gradient you've temporarily defined. If you then cancel the dialog, the previously defined gradient is preserved while keeping any changes to the map displays. This feature (suggested by Jim Borden) makes it much easier to choose an effective color range. Also, an "Apply to Map" button replaces "Update" on the Segments page of the Review dialog. This refreshes all open map frames with the color settings on that page.
- Miscellaneous improvements: The options to view previously generated SVG and VRML files behave differently. If an SVG file is highlighted in the project tree, the operation will open that specific file. Otherwise, you'll pick from a date-sorted list of files in the project folder.
Version 2, B7 Release, Build 2004-03-20
- The most significant change with this build is that survey vectors
and flagged stations are automatically highlighted as you move
the mouse pointer over a displayed map. Upon selecting an object you can jump to either its definition in the raw data or to its
position in the statistics tables. Another choice is to display all compiled
information about the object. The information window is also available from the
editor and Traverse page context menus and has buttons for copying coordinates
directly to the geographical calculator. See topic Vector Properties Window in
the help file.
Vector highlighting is enabled when a screen pixel represents
two meters or less. If an enclosing rectangle is present,
right-clicking displays a menu like the one at left. If the
pointer is not near an object when you click, a
different menu appears -- one that supports zooming, layer
toggling, and other operations.
- The help file topic Accessing Walls from Other Applications
documents how an external program, such as Huw Millington's
Windows Grep, can be tightly
integrated with Walls to perform specialized searches (involving wildcards, etc.) across project data files.
- Numerous minor improvements. Examples:
The display statuses of station notes and flags are preserved project settings.
Color selection buttons show the current color or gradient type
when the mouse pointer pauses over them. Rendering of
gradient-colored LRUD passages was improved. The tutorial sample project was expanded.
Thanks for taking the time
to look the program over. Please contact me if you have suggestions
or need additional information.