This project's goal is to develop a data visualization tool for terrain maps: specifically, a GUI for manipulating and viewing maps of the North Shore Mountains near Vancouver. Already provided for the terrain viewer will be a general, thumbnail map of the area in interest (in this case, the North Shore Mountains). Also provided will be topographical data of the region's elevations, as expressed in three-space coordinates.

The job of the visualization tool is to provide a graphical user interface for the viewing, in topographical detail, of any arbitrary subregion of the general map whose dimensions the user will determine. The tool will use the topographical data to construct a terrain map of this subregion. The map will express elevations by using a system of gradated colors.

Ideally, this software will be extended for use in viewing maps not just of the Vancouver area but also of any area, whose general map and corresponding topographical data have been provided.


The party of Chris Arrington, Kirk Boyd, Jeff McLamb, Kwan Skinner, and Brad Timmers shall be hereafter referred to collectively as "the contractor". The contractor hereby agrees to design and provide a map development tool that fulfills all Primary Requirements given below. Upon completion, the software shall be delivered to the client no later than May 1st, 2000.

In the event that the project is finished ahead of time, the contractor agrees to fulfill as many Secondary Requirements as possible; and should those be finished with time to spare, the contractor will fulfill as many Tertiary Requirements as possible.


  • The visualization tool must work for the map and data of Vancouver provided by the client.
  • The terrain maps of the subregions chosen by the user must give an aerial perspective.
  • The maps must also use a system of gradated colors to show differences in elevation of terrain.
  • There must be a feature that allows the user to view the chosen subregion with its z-coordinates scaled by an arbitrary factor; that is to say, the user may choose to double or triple all z-coordinates, so as to bring out more clearly the differences in elevation on the map.
  • The programming must be done in some language which can run C programs provided by the client.


  • The user will be able to provide an arbitrary map and topographical data in either UTM coordinates (three-space) or the U.S. standard format.
  • In addition to viewing a subregion from an aerial perspective, the user will also be able to view it from a 3D perspective.
  • The user will be able to select for himself the colors used in showing elevations.


  • Maps can be viewed with the head-mount displays (HMDs) in the UNC CS Department.


Dr. Jack Snoeyink shall be hereafter referred to as the "client". The client hereby agrees to provide the contractors with the following resources:

  • Map and data for the North Shore Mountains of Vancouver
  • C program for triangulating data points


In addition to those resources provided by the client, the following will be needed:
  • GUI software such as FLTK, Tcl/TK, or GLUI
  • OpenGL software
  • Microsoft Project


  • Algorithm which constructs terrain maps from data points may be too slow to be practical.
  • Set of data points may require more memory than is practical; some data points may need to be sacrificed, at the expense of precision.
  • Data for Vancouver area and other areas may not be available in time for project's completion!


This contract was signed by the following parties:

Contractor Client
Chris Arrington
Jack Snoeyink
Kirk Boyd
Jeff McLamb
Kwan Skinner
Brad Timmers

For a printable version of this page, click here.