|


| |

What is it about
Keywords: Computational Geometry, Programming Environment, Algorithm
Animation, Dynamic Visualization, Voronoi Diagram, Delaunay Triangulation,
Convex Hull, Euclidean Minimum Spanning Tree
GeoLab (which stands for Computational Geometry Laboratory)
was developed at the Institute of Computing
at UNICAMP (State University of Campinas)
as a programming environment for implementation, testing and animation of
geometric algorithms. GeoLab was conceived to be a tool for the working
researcher or a group of them, since at its root lie the use of shared libraries
of algorithms and an incremental approach to aggregating new types of geometric
objects, data structures and extensions accessed through dynamic linking.
GeoLab is written in C++ and makes extensive use of object oriented
programming for a hierarchical modeling of geometric objects and of geometric
algorithms. It currently has about 40 algorithms in its dynamically linkable
libraries which are made up of roughly 45,000 lines of C++ code (plus an
additional 30,000 lines for
the environment itself).
Animation Modes
Two animation modes supported by GeoLab are illustrated in the accompanying
video. The first mode is called dynamic move. It basically animates the
geometric objects produced by any given algorithm as the input undergoes changes
in real time conducted interactively by the user manipulating the mouse. No
changes in the code of the algorithms are required for this mode to operate.
This mode serves well the purpose of illustrating the relationships between
input data and output geometric constructs, which is of great value for teaching
computational geometry.
The second mode, which is truly characterized as algorithm animation,
requires the inclusion of code for graphical display of the geometric actions
performed by an algorithm. In order to ease this task, a library of graphical
routines, the "GeoLab Animation Toolkit," is provided so that programmers need
not use the lower level Xlib functions.
Key Benefits
 | A graphical and interactive programming environment for the manipulation
of geometric models; |
 | Mechanisms for the inclusion of (dynamically linked) new algorithms and
external geometric objects; |
 | Support for algorithm animation; |
 | Support for analysis and debugging; |
 | Tools for handling secondary storage; |
 | Input generators for program testing. |
References
 | You may read about GeoLab in: |
- This paper:
P. J. de Rezende and W. R. Jacometti. GeoLab: An
Environment for Development of Algorithms in Computational Geometry.
Proceedings of the 5th Canadian Conference on Computational Geometry.
Waterloo, Canadá: University of Waterloo, 1993. p. 175-180.
Available here in this report:
P. J. de Rezende and W. R. Jacometti.
GeoLab: An environment for development of algorithms in computational geometry. Technical Report 26/93, Institute of Computing, UNICAMP, 1993.
- This short paper:
P. J. de Rezende and W. R. Jacometti. Animation of
Geometric Algorithms using GeoLab. In: Proceedings of the 9th ACM Simposium on
Computational Geometry. New York, EUA: Association for Computing Machinery,
1993. p. 401-402.
Available here in this report:
P. J. de Rezende and W. R. Jacometti.
Animation of Geometric Algorithms using GeoLab. Technical Report 101a,
Systems Research Center (DEC/SRC), 1994, p. 22-26.
- This video:
P. J. de Rezende and W. R. Jacometti. Animation of
Geometric Algorithms using GeoLab. In: Video Review of the 9th ACM Simposium
on Computational Geometry.
Available as: Technical Report 101b, Systems Research Center (DEC/SRC),
1994.
License Terms
 | Open Source License
GeoLab is available under
an Open Source license. More
exactly, it is under the GPL License. If you intend to modify or write your
own software based on components of
GeoLab , make sure you read
the GPL license and abide by
the terms therein. |
Download

Contact Information
If you have questions not answered in these pages, feel free to contact us.
However, we should point out that all the documentation we have available is
posted here.
- People involved
-
- Pedro J. de Rezende
- Welson R. Jacometti
- César N. Gon
- Laerte F. Morgado
- Electronic mail
- General Information:

- Postal address
- Institute of Computing, UNICAMP, Campinas SP, Brazil
- Telephone
- +55 19 3788-5860
- FAX
- +55 19 3788-5847
|