CGI::Application is a Perl framework intended to make it easier to create sophisticated, reusable Web-based applications. This module implements a methodology which can make Web software easier to design, easier to document, easier to write, and easier to evolve. CGI::Application builds on standard, non-proprietary technologies and techniques, such as the Common Gateway Interface and Lincoln D. Stein's excellent CGI.pm module. CGI::Application judiciously avoids employing technologies and techniques which would bind a developer to any one set of tools, operating system, or Web server.
PROJ.4 is a cartographic projections and datum shifting library written in C. It includes support for many (100+) projections, including Transverse Mercator and Lambert Conformal Conic. Included is a command line program for reprojecting points. It was originally written by Gerald Evenden of the USGS, and is in active use in various commercial and freeware software.
libgeotiff is a library (normally built on top of libtiff) for reading and writing coordinate system information from/to GeoTIFF files. It includes CSV files for expanding projected coordinate system codes into full projections definitions and examples of transforming the definitions into a form that can be used with the PROJ.4 projections library. It also includes the sample applications listgeo (for dumping GeoTIFF information in readable form) and geotifcp (for applying geotiff tags to an existing TIFF or GeoTIFF file).
The Geospatial Data Abstraction Library (GDAL) is a unifying C/C++ API for accessing raster geospatial data, and currently includes formats like GeoTIFF, Erdas Imagine, Arc/Info Binary, CEOS, DTED, GXF, and SDTS. It is intended to provide efficient access, suitable for use in viewer applications, and also attempts to preserve coordinate systems and metadata. Python, C, and C++ interfaces are available.
RPilot is an interpreter for the IEEE-standard programming language PILOT written in portable C. PILOT is a language that was designed in the 1960's to support computer-aided instruction and is very simple to learn. RPilot comes with an introduction to the language and several examples.
QGLViewer allows people programming in OpenGL to play around with three dimensional scenes or to write software that uses OpenGL. It provides a set of classes for camera control, as well as comfortable user interface that allows you to control your viewing parameters via mouse and buttons. A framework for camera paths and their interpolation is provided, as is a simple scene tree. QGLViewer is object oriented and programmed in C++ such that the programmer simply instantiates a viewer and connects it to their own render routines.